【发布时间】:2012-02-03 10:30:14
【问题描述】:
我有一个 aspx 页面,它使用了 App Code 文件夹 doSomething(int[] x) 中的一个类中的方法。我将函数定义更改为使用 IEnumerable 而不是数组:doSomething(IEnumerable<int> x)。接下来,我预编译了网站,使用“允许网站可更新”,并发布了新的 App_Code.dll。现在,页面的预编译版本在运行时会出现服务器错误:“找不到方法”。
如果我还发布为页面生成的 DLL,“App_Web_[page].aspx.[random].dll”,它可以工作。所以看起来函数的签名以某种方式嵌入到编译页面中......?为什么会这样,在更改现有代码时有没有办法避免这个问题?
每当我更改公共类中的代码时,我都不想更新所有页面 DLL。
【问题讨论】:
-
你有没有费心去看MSDN,了解ASP.Net编译的类型。 msdn.microsoft.com/en-us/library/ie/ms178466.aspxmsdn.microsoft.com/en-us/library/ie/ms366723.aspx
标签: c# asp.net web-site-project