2013-01-06 43 views
2

第一个问题:如何修改自动生成的代码

我使用一些externall楼内设有商务图书馆,他们有例如System.Web.UI.Page奇怪的命名空间。无能为力。在ASP.NET中出现问题时,库被加载一切都很好,但显示的网页时出现问题:

CS0433:类型“System.Web.SessionState.IRequiresSessionState” 存在于两个

所以基本上C#试图编译页面 - 但不知道哪个库用于这种类型

我发现解决方案与外部所有同盟,但是,然后有一个设计师原因的问题,每次我修改页面将打破命名(真的很难mantain) - desginer将从切换名称,或者当添加新的ellemnts时,他们将显示global ::。这将非常耗时。

问:

我可以修改为ASP.NET页/控件此自动生成的代码,如果我能以某种方式注入工艺,并做简单的做字符串替换我可以使用双alliase,一切都将正常工作。为了澄清我的意思是这样的文件:

C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \临时ASP.NET 文件\ ROOT \ f3552813 \ 29b6906c \ App_Web_XXXXX.aspx.65a2d1ee.p58- fzio.0.cs

更新1 你们不明白的问题,标准的系统库的System.Web具有类System.Web.UI.Page,库运行时期间我加载具有相同类型(命名空间和班级)。现在当ASP.net编译页面时,* .aspx,* .ascx文件被编译 - 它不能告诉它应该使用哪个库,并且我得到错误:

CS0433:类型'System.Web.UI。页' 存在于两个DLL中

+0

它更好地避免甚至尝试修改自动生成的代码! – Aristos

+0

快速谷歌搜索发现这个把戏: http://stackoverflow.com/questions/1757289/where-does-error-cs0433-type-x-already-exists-in-both-a-dll-and-b-dll-来吧 这有帮助吗? – Nahum

回答

2

使用临时文件和目录不是一个好的模式。 解决方法是修改代码 - 请举例说明。