c# - 命名空间 'Transactions' 中不存在类型或命名空间名称 'System'

标签 c# asp.net .net visual-studio-2013 transactions

<分区>

这是一个带有 Visual Studio 2013 的 ASP.Net Web 应用程序。该解决方案由多个项目组成。我在一个库项目中有代码,该项目使用 System.Transactions,并且它运行良好了几个月。

今天,我在 Web 应用程序项目的代码中添加了相同的 using System.Transactions,但失败并显示以下错误消息:

The type or namespace name 'Transactions' does not exist in the namespace 'System'

以下是我尝试过的一些方法:

  • 添加了对 System.Transactions 的引用。
  • 已验证两个项目中引用的 dll 文件是否相同。
  • 将框架从 4 更改为 4.5 并返回。
  • 已验证所有项目都使用相同的框架版本。
  • 清理并重建解决方案。
  • 退出 Visual Studio,删除 AppData>Local>Temp 中的所有文件,重新构建。
  • 重新启动电脑。

因此,结果是 using System.Transactions 在一个项目中工作正常,但在另一个项目中却不行,即使这两个项目都在同一个解决方案中也是如此。

有什么建议吗?

编辑:这里有一个奇怪的地方,可能没有任何额外帮助,但这里有:

  • 当我构建项目时,没有任何错误。也就是说,using System.Transactions 编译得很好。
  • 如果我运行应用程序,它会崩溃并且错误会出现在浏览器窗口中。 VS 代码窗口仍然没有显示任何错误。
  • 如果我编辑 using System.Transactions 或添加类似 var x = System... 的代码,错误会立即出现在 using System.Transactions 中

** 编辑:** 这个问题被标记为重复。事实并非如此——建议的副本通过浏览引用文献解决了问题。我已经尝试过了,但没有帮助。就我而言,我不得不使用“复制本地”选项。

最佳答案

引用这个Answer By Mark Hall

There is a Microsoft Connect entry posted for this. There is a comment that suggests that you can browse for it. The path given is:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5\System.Transactions.dll

只需通过浏览到此路径添加引用

如果这不起作用,转到 References -> System.Transactions 并确保在该引用的属性上将“Copy Local”设置为 True。

关于c# - 命名空间 'Transactions' 中不存在类型或命名空间名称 'System',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30248051/

相关文章:

c# - Elasticsearch.net - 范围查询

C# JSON 转 LIST 扩展方法

asp.net - 在 async/await 之前的过去,WebAPI 请求是如何取消的?

c# - 如何在 Azure App Service 上运行的 ASP.NET Framework App 中禁用服务器 GC

c# - 进入全屏模式时更改页面

c# - 使用Graph API获取用户信息

c# - StringBuilder 还是 XMLDocument?

c# - 将一个点向另一个点移动一定的距离

c# - async partial void MyPartialMethod() 危险吗?

ASP.NET Core RC2 项目 - 服务文件夹的用途是什么?