.net - 在新项目中找不到具有相同版本的“Glass.Mapper.Sc”中的“sc”命名空间
问题描述
我创建了一个新的 .NET XUnit Core 项目,将其转换为 .NET Framework 4.6.1 以与其他遗留解决方案类似,并尝试添加一个新测试。我意识到我需要为 ISitecoreContext 使用 Glass Mapper(我认为它可能会被贬值,但我们在代码中使用它),因为这是一个 Sitecore 解决方案,在各种项目中都有一些自定义代码,所以我尝试添加相同的 Glass Mapper 库. 因此,我卸载了其他几个项目,梳理了他们的项目文件以找到 Castle.Core、Glass.Mapper.Sc 和 Sitecore Nuget 包的版本,然后将这些 Nuget 包添加到我的项目中。
但是,现在我无法将 Glass.Mapper.Sc 命名空间添加到我的新测试文件中。Glass.Mapper 存在,但 Glass.Mapper.Sc 不存在。较旧的项目是 .NET Framework 4.6.1,Nuget 包版本相同。我唯一能看到的不同是旧项目使用“参考”,而新项目在 Dependencies 下有 Nuget 包。我认为较旧的项目只是链接到根的包文件夹中的解决方案的 Nuget 包。
我在这个项目中缺少什么?这是因为我在项目文件中将它从 .net core 转换为 framework 4.6.1 吗?我认为 C# 中的新项目有自己的 Nuget 包和程序集,而不是拥有它们的解决方案?这是因为新项目在处理引用的方式上有所不同吗?我无法更改解决方案或其他项目(因为我们正在尝试修复此遗留代码)。我确信这是我刚刚忽略的一些愚蠢的事情,或者我错过了一些基本的事情。先感谢您。
解决方案
在这种情况下,我认为Glass.Mapper.Sc.XX.MVC
缺少对 package 的引用。
为了让它在我正在升级的项目中为我工作,我必须有 2 个包引用:MVC 一个和Glass.Mapper.Sc.Core
推荐阅读
- python - 将 pdf 文件转换为新目录中的原始文本
- python - ImportError:无法导入名称“is_scalar”
- sql - 我们可以在 ISE 控制台上显示 $dataset 中填写的 sql 结果还是需要 GUI?
- c# - 无法在运行时为动态变量调用扩展方法
- php - 我在 php 中得到一个未定义的 curl_version() 函数
- apache-spark - 5 分钟 Spark 批处理作业与流式作业
- python - Matplotlib 表格 Y 轴对齐图表
- excel - 您可以在不选中启用所有宏的情况下运行 VBA excel
- python - 当不存在公共记录时,Pandas 合并删除添加的列
- node.js - 如何在节点js+firebird中执行存储过程