Converting an ASP.NET website to web application project in Visual Studio 2010

During converting a large ASP.NET website (more than 500 aspx page and 750 ascx user control) to a Web Application Project in Visual Studio 2010, I encountered many problems and found solutions for them. I’d like to share them with all.

1. Website does not have namespace in projects. While Webproject does have. It’s better to add namespace for all pages and user controls. Namespaces must match physical path of file in the project tree. If you have not enough time to do it for all items you can just find items with same name and change class names only for them. I have added “Page” in the end of class names of pages that were residing in Pages folder.

2. App_code does work. Better to renamed it to something unreserved like WebCode. Check if build action is set to “compile” not to “content”.

3. Take special care for class name of master files.

4. You need to select “convert to web application” by right clicking the web project. It will add designer file for all items. This process is very slow.

5. rdlc reports files (MS SQL Reporting Services client reports) may produce many problems. web.config and other locations must be corrected with newer versions of Reporting Services.

6. Some datasets must be corrected via editing web project csproj file correctly. You must add an entry like following for designer file too.

     

True
True
DataSet1.xsd

You can also add a dummy dataset to project and see how it is.

7. Consider having all user controls in the project. In my special case “common” folder added to project too.

8. If you encounter errors like “Element ‘x’ is not a known element” in Visual Studio 2010  you may try this solution.

9. You may need additional tricks. For example create a dummy user control and drag it on the page.

10. Seems all user controls must have namespace

11. Total process may need many tricks. So turn on your innovation!

وب‌سایت شخصی من

بالاخره من هم در آخرین روز سال ۲۰۱۰ تسلیم وسوسه شدم و یک domain اختصاصی به آدرس http://afsharm.com ثبت کردم. از این به بعد اطلاعات مربوط به خودم را در اینجا قرار می‌دهم. وبلاگم هم از آدرس قبلی به آدرس http://blog.afsharm.com منتقل شده است. البته این همان وبلاگ اصلی خودم است که فقط آدرسش عوض شده. یعنی اگر از طریق فید مطالب را دنبال می‌کرده‌اید نیاز به تغییر چیزی ندارید. علاوه بر این همه لینک‌های قبلی هم همچنان کار می‌کنند. چون هر ارجاعی به آدرس قبلی وبلاگم به آدرس جدید آن Redirect می‌شود.

محدودیت‌های شدید در استفاده از منابع image/file hosting مجانی، پیش‌بینی محدودیت‌های جدید در راستای محدودیت‌های سه‌گانه اینترنت و اعتبار نسبی domainهای اختصاصی نسبت به آدرس‌های عمومی مثل blogspot از جمله دلایل این مهاجرت بود. مشتاق شنیدن نظرهای دوستان هستم.