Category Archives: ASP.NET

How to Download Files Containing Special or Non-ASCII Characters in the Filename Using ASP.NET

Credit: couple months ago, I worked with file downloads that had filenames with non-ASCII Unicode characters, as well as special characters, such as semi-colons, commas, periods, and others (@, %, +, {, }, [, ], $, #, &, =). Here is an example of a filename that has all of those characters:  日本人 中國的 ~=[]()%+{}@;’#!$_&-  éè  ;∞¥₤€   .txt    

After a couple days of online research,  I finally found a solution that worked across different major browsers like IE8, IE9 and IE10, Firefox 21, Chrome 27, Safari 5 (on Windows). These are the most up-to-date versions as of this writing. Opera mostly works fine as well; however, I noticed that it doesn’t like the space and curly bracket characters.

Without going into detail about character encodings in the HTTP headers, I’d like to mention two major pieces of information you should know that I found regarding this issue:

1. According to the section 2.3 in RFC-2183 (Content-Disposition header field), the “filename” parameter in the Content-Disposition header can only use the US-ASCII characters.

2. However, as specified by RFC-5987 and RFC-2231, the correct encoding can be included right in the header field by using the filename* syntax and then by percent-encoding the non-ASCII characters in the filename. For example, for the filename “test-€.txt,” the content-disposition header would look like the following:  attachment; filename*=utf-8”test-%E2%82%AC.txt. Here is the .NET code that I had for writing the response header:

Response.AddHeader(“Content-Disposition”, “attachment; filename*=utf-8”” + Server.UrlEncode(fileName);

However, when I tried that syntax with my test filename Continue reading How to Download Files Containing Special or Non-ASCII Characters in the Filename Using ASP.NET

Boston April Meetups: What to do for the Tech-Savvy Entrepreneur in You

Credit: www.NewEnglandMagazine.comThe sun is finally peeking through the gray skies of Boston, beckoning Bostonians to emerge from their wintery confines and bebop around the city. Thusly, I set out to find a few meetups for the tech-savvy entrepreneur in you to explore this April. (Disclaimer: I have a bit of a love affair with the New England Research & Development Center here in Cambridge, so forgive me if the recommendations are a bit NERD-centric.)

  1. MozPub Mondays
    1. When: April 1st, 7pm (and every Monday in April thereafter)
    2. Where: Grendels Den, 89 Winthrop St., Cambridge, MA 02138
    3. Description: Connect with other web dev aficionados over a pint for casual discussions on bringing the world of Mozilla to Beantown. First one happens tonight! Don’t miss out.
  2. Dispute Impossible: Build and Run Applications that Bring the Enterprise Together
    1. When: April 17th, 9am – 1pm
    2. Where: Microsoft NERD Center, One Memorial Dr., Cambridge, MA 02142
    3. Description: Microsoft, K2, and Atrion plan to show you how to bridge the disparate systems and applications of the enterprise. In this session they will show you how to build and integrate applications across the departments in your company.
  3. Clash of the Clouds: Azure vs. Open Source Cloud Services
    1. When: April 30th, 6:30pm – 8:30pm
    2. Where: Microsoft NERD Center, One Memorial Dr., Cambridge, MA 02142
    3. Description: Bring on the debate. Not your traditional session style, this meetup Continue reading Boston April Meetups: What to do for the Tech-Savvy Entrepreneur in You

Resources Every Performance Tester Should Know About

Performance is a widely overlooked feature in the development world. In enterprise development, better performance can correlate directly to company profit. More efficient programs utilize fewer resources; fewer resources cost less money.

On the consumer end, performance can make or break a product. One reason Google has such great market share is the speed at which they deliver their applications and data. The philosophy is pretty simple really: when users have to wait for something, they either get distracted (in which case they forget about you) or frustrated (in which case they’re mad at you).

The bottom line is performance matters. That’s why performance testing is vital to any product and company. I’ve outlined a few resources that I’ve found to be the most useful for performance testing below:

1. Steve Souders’ Blog

Steve Souders is the head performance engineer at Google and has literally written THE book on web performance. I’ve been on Steve’s RSS feed Continue reading Resources Every Performance Tester Should Know About

Big Data and OfficeWriter

Big Data DemosWe partnered with Andrew Brust from Blue Badge Insights to integrate OfficeWriter with Hadoop and Big Data. Taking existing OfficeWriter sample projects, Andrew discusses how he created two demos showing OfficeWriter’s capabilities to work with Big Data. One demo uses C#-based MapReduce code to perform text-mining of Word docs. The other demo focuses on connecting to Hadoop through Hive.

In these demos you will learn:

  • How OfficeWriter integrates with Hadoop and Big Data
  • How to use ExcelWriter with Hadoop

Windows Azure and OfficeWriter

Windows Azure and OfficeWriterWe’re taking OfficeWriter to the cloud. In these videos you’ll see how OfficeWriter runs on Windows Azure. Taking our exisiting OfficeWriter web sample projects, Andrew Brust from Blue Badge Insights made them run on the Windows Azure cloud platform.

In these videos you will:

  • Learn how OfficeWriter web samples were put on the cloud
  • Learn how the runtime environment for the Windows Azure samples compares to the ASP.NET samples
  • Have access to the OfficeWriter web samples

WEBINAR Feb 22nd: PivotTables in OfficeWriter 8.4

Have you heard? OfficeWriter 8.4 with PivotTable support is here! You’re invited to take a first look at the new PivotTable API within OfficeWriter 8.4 in this interactive webinar.

Our Senior Sales Engineer (and adept demo master), Chad Evans, will walk you through several ways PivotTables can help you wrangle and report on your data. Bring your questions or email them beforehand and we’ll be happy to include them.


Friday, February 22, 2013 at 1 p.m. EST

What we’ll cover:

  • How to use PivotTables to better sort and filter your data
  • How to programmatically create Excel PivotTables in OfficeWriter
  • How to programmatically update existing Excel PivotTables in OfficeWriter
  • Your questions

Spots are limited. Save your seat and register today.

Can’t attend, but still want to learn more? Register anyway! We’ll send the slides and a recording of the webinar after the event.

PivotTables Now Available within OfficeWriter 8.4

OfficeWriter 8.4

WATERTOWN, MA (February 12, 2013) – SoftArtisans announced the addition of PivotTables to their OfficeWriter product today. OfficeWriter 8.4 is now available for download. Included in this new version, is the ability to create, modify, and remove PivotTables within users’ Excel workbooks. With the new PivotTable functionality customers have the ability to add Report Filters to better filter and sort their data, as well as change the data source of a PivotTable (including PivotTables already copied with CopySheet). This provides users with more fine-grained control over their data and reports.

Also included in this product release are new features to their WordTemplate model. Within WordTemplate DOCX files, users now have the option to programmatically set the document properties of their DOCX files and to remove bookmarked content when delivering reports.

OfficeWriter provides customers Continue reading PivotTables Now Available within OfficeWriter 8.4

Watch What’s New in OfficeWriter 8.4’s PivotTable API

Take a walk through of the new PivotTable functionality in the release of OfficeWriter 8.4. To access the new API, download an OfficeWriter Evaluation.
To view a complete list of features and fixes in this release, see What’s New in OfficeWriter 8.4.‎

What’s new in OfficeWriter 8.4


OfficeWriter 8.4 packs a powerful punch with exciting new features, most notable of which is ExcelApplication support for PivotTables in OOXML (XLSX, XLSM) files. ExcelWriter already supports the use of PivotTables in ExcelTemplate and SSRS reports,  but now you can programmatically create, manipulate, and remove PivotTables with ExcelApplication.


The new PivotTable API gives you the freedom to:

  • Create PivotTables from scratch (see our tutorial on Creating a Basic PivotTable)
  • Add and manipulate PivotTable fields – data value fields, column labels, row labels, and report filter page fields
  • Access common settings like empty/error values, refresh data when opening a file, and the number of cached items to retain

With the API you also have the ability to change the data source of a PivotTable. Continue reading What’s new in OfficeWriter 8.4

Events: Spring 2013 Career Fairs

IMG_1115 Photo 2IMG_1056

Coming to a college near you. We’re Looking for swashbuckling, creative college grads with object-oriented programming under the belts, a penchant for amassing new skills, and who don’t mind a few board games and BBQs. Think you’ve got the coding chops to work in this dynamic office environment? Then we want to meet you.

We’re big on hands-on learning and career development. In years past we’ve had interns work on product demos, pick up a new programming language, and share their expertise on our blog. Have a question? Ask it. Have an opinion? State it. Have an idea? Run with it.

Got you curious? Let our Technical Services team give you an inside look at this eclectic group and the types of projects you could be working on in this video.

Who we are: SoftArtisans is a leading developer of Microsoft Office reporting software. As a key Microsoft partner, SoftArtisans delivers award-winning products to over 20,000 clients in over 70 countries. We’re a company founded on brains not gimmicks and we aim to keep it that way.

Find out more about internship and career opportunities at SoftArtisans and how to join the SA Crew (and get in on those BBQs) by interacting with us on all of the usual social media hotspots or visiting one of the career fairs below. Looking forward to seeing you then!

Spring Career Fairs

Olin College

Wednesday, February 13, 2013, 11 a.m. – 2 p.m. Continue reading Events: Spring 2013 Career Fairs