【发布时间】:2011-03-06 10:33:08
【问题描述】:
我们刚刚从 VS2008 升级到 VS2010。
我们的项目编译良好;但是当我们运行Web应用程序时,打开Default.aspx时出现以下错误:
“/”应用程序中的服务器错误。 编译错误描述:一个 编译过程中发生错误 提供服务所需的资源 要求。请查看以下内容 具体错误详情并修改您的 适当的源代码。
编译器错误消息:CS0246: 类型或命名空间名称“var”不能 被发现(您是否缺少使用 指令还是程序集引用?)
打开页面,将鼠标悬停在“var”声明上,VS2010 正确识别出它的类型是 RegEx。
我在想升级期间我们的 web.config 或 machine.config 中可能发生了一些奇怪的事情。
以前有人遇到过这个问题吗?任何帮助将不胜感激,希望它可以节省我一些时间深入研究这些文件。
编辑: 这是爆炸的相关代码部分:
Line 10: protected void valSearchFreeText_ServerValidate(object source, ServerValidateEventArgs args)
Line 11: {
Line 12: var url = new Regex(@"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?", RegexOptions.IgnoreCase);
Line 13: var html = new Regex(@"[<,>]", RegexOptions.IgnoreCase);
Line 14: args.IsValid = !html.IsMatch(args.Value) && !url.IsMatch(args.Value);
我不认为 .NET 4.0 是原因;我们只从VS2008升级到VS2010;我们没有从 .NET 3.5 迁移到 .NET 4.0
我将仔细检查 ASP.NET 开发服务器与 IIS,并在几分钟后将结果发回。它肯定是从开发服务器中抛出的。
编辑 2 这是从开发服务器和 IIS 中抛出的。 System.Xml.Linq 也包含在我们的 web.config 的程序集部分中:
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
【问题讨论】:
-
在 IIS 或开发服务器上运行 Web 应用程序时,你会得到这个吗?
-
请显示相关的代码部分,以便我们在上下文中看到“var”。
-
你确实有' using System.Linq '指令,对吧?
标签: c# web-applications visual-studio-2010