即使引用 System.Core.Dll 也缺少 System.Linq 命名空间

发布于 2024-09-25 16:42:38 字数 625 浏览 5 评论 0原文

当我在 Visual Studio 2010 中打开我的 Asp Net 网站时,属性显示“Target Framework 3.5”,但是当我尝试使用 Linq 命名空间时,编译器会抱怨它。

“找不到类型或命名空间名称 'var'(是否缺少 using 指令或程序集引用?)”

“命名空间 'System' 中不存在类型或命名空间名称 'Linq'(是否缺少程序集引用?)”

我手动引用了一些 dll 来解决我的问题,但仍然没有成功。

<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

帮助? :-)

When I open up a Asp Net web site of mine in Visual Studio 2010 the properties say "Target Framework 3.5", however when I try to using the Linq namespace the compiler complains about it.

"The type or namespace name 'var' could not be found (are you missing a using directive or an assembly reference?)"

"The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?)"

I manually referenced some dll's to fix my problem, but still no success.

<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

Help? :-)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

翻身的咸鱼 2024-10-02 16:42:38

如果您甚至无法使用 var,则表明它甚至没有使用正确版本的 C# 编译器。 (只要您使用的是 C# 3 或 C# 4 编译器,即使以 .NET 2.0 为目标,您也应该能够使用 var。)我会先集中精力让其正常工作,然后再做其他事情。

您是否有可能在 IIS 上运行但没有正确配置?可能值得查看您的网站配置,并可能重新运行 aspnet_regiis。

If you can't even use var, that suggests it's not even using the right version of the C# compiler. (You should be able to use var even when targeting .NET 2.0, so long as you're using the C# 3 or C# 4 compiler.) I would concentrate on getting that working first before anything else.

Is it possible that you're running on IIS but don't have that configured appropriately? It might be worth looking at your website configuration around that side of things, and possibly rerunning aspnet_regiis.

阳光①夏 2024-10-02 16:42:38

我刚刚解决了类似的问题,在 web.config 中的 compilation 元素中添加了 targetFramework="4.0" 属性,

修改后的相关片段是:

<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
  </assemblies>
</compilation>

I just fixed a similar issue adding a targetFramework="4.0" attribute to the compilation element in web.config

The modified relevant fragment is:

<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
  </assemblies>
</compilation>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文