ASP.Net with C# Project 由VS2005 开发,在Windows Server2003 和IIS6 下运行。由于我们正在计划硬件升级,我们尝试将项目移动到带有 .Net4.0 和 IIS7 的 VS2012。解决方案从 VS2005 到 VS2012 与 .Net4.0 并部署到 IIS7 的转换是顺利的。该网站在 IE9 下运行良好,除了来自 javascript 的 WebMethod 调用抛出错误消息:500-服务器方法“LookupTest”失败。
这就是 WebMethod 部分:
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class LookupMethods : System.Web.Services.WebService
{
[WebMethod]
[System.Web.Script.Services.ScriptMethod]
public UNLookupResult LookupTest(int objectID)
{
return new UNLookupResult();
}
}
对 WebMethod 的 JavaScript 调用:
this._WebRequest = Sys.Net.WebServiceProxy.invoke(this._SearchPath, "LookupContractTest", false, { "objectID":20 }, Function.createDelegate(this, this.LookupComplete), Function.createDelegate(this, this.LookupError));
- 我在IIS7下调试程序时无法调用LookupTest函数。
- 如果我修改 LookupTest 函数不带参数,它运行良好,没有任何错误。像这样: public UNLookupResult LookupTest()
- 该项目使用 AjaxControlToolkit.dll v1.1。如果项目使用.Net4.0会不会有问题?
任何提示或建议?提前致谢。