我希望通过直接引用插件项目并实例化插件类来测试插件的核心类.当我创建一个测试Console App项目并向插件项目添加项目引用时,我会在References列表中的引用旁边看到一个警告图标(带有感叹号的黄色三角形).
当我改为添加对dll的引用时,插件的程序集构建输出,我没有得到这样的警告.这个警告可以告诉我什么?
当它在VS2012 IDE中打开时,我的项目中出现了一个奇怪的错误.它突然说到我使用另一个参考项目的地方"Type or Namespace name could not be found".并且通过"说",我的意思是当我将鼠标悬停在它上面时,它的文字用红色加下划线并带有错误.intellisense不适用于该代码.但是(这里是奇怪的部分),错误没有显示在错误控制台中,项目构建并运行正常.
我甚至可以调试并逐步执行代码,它工作得很好.所以在运行时项目被引用很好,但在设计时IDE无法找到它.这种情况在过去的两周里一直有效,然后才突然变得有些疯狂.这真的很烦人,因为我在没有intellisense的情况下编写垃圾!
有没有人见过这样的东西或有任何建议?
好吧那么,我的问题的简短版本是:
当您拥有跨多个解决方案共享的项目时,在Git中处理项目引用的最佳方法是什么?如何组织我的Git repos?
长版本是:
我们是一个小型开发团队(5个开发人员),目前我们使用TFS作为源代码控制和构建服务器,Visual Studio是我们的首选IDE.我一直热衷于尝试新事物,并试图改善我们的开发环境,所以我决定阅读Git以了解它是否可以替代TFS的源代码控制部分.我们刚刚将Jira集成到我们的工作流程中,所以我决定尝试使用Stash作为我们的Git环境,因为它与Jira的集成程度如何.我现在正在试图找出组织git repos的方法,这就是我在这里的原因.现在我要描述我们有多少解决方案是有组织的.
我们有很多解决方案.有些是库,有些是通过Visual Studio中的Project引用引用这些库的程序.
所以让我困惑的主要问题是如何处理许多解决方案中引用的库?
我们应该开始对我们的库进行版本控制并将每个库放在一个单独的仓库中吗?当库收到必须部署的更新并且该库被20多个解决方案使用时,这种方式似乎会涉及大量额外维护.我错了吗 ?我看到的另一个缺点是Visual Studio中不再有Project引用,它会使调试变得更加繁琐.
我是否应该使用我们所有的解决方案进行大型回购,这样我们所有的参考资料都是最新的?
我还想过,也许我可以创建自己的nuget存储库,其中包含所有这些库,这样在需要时更新引用的库就不那么麻烦了.这只是一个想法,我没有适当地研究这个,所以我不确定这是否有任何好处.
那么,有没有人可以给我一些建议?
git solution project-reference visual-studio bitbucket-server
我们有一个Visual Studio 2010解决方案,有超过120个项目以某种方式相互引用.所有项目间引用都是项目引用,而不是文件引用,这有助于Visual Studio自动确定项目构建顺序.在120个中,我们有一些核心项目彼此不相互依赖,这些项目被其他项目广泛引用.因此,这些项目位于项目构建顺序的顶部.这些核心项目引用了.NET框架,Enterprise Library(其中一些包含第三方dll文件引用,如zip实用程序).
我无法弄清楚为什么这些核心项目是以特定方式订购的.非相互依赖项目的项目构建顺序的算法是什么?
PS:我明白我可以通过使用Project Dependencies的Dependencies选项卡创建一个假的依赖来影响这个顺序.
我有一个有一个类库项目的解决方案,其他的是WPF应用程序.我添加了类库的引用,但是它们都不能使用它的类.
那么,问题是什么?
注意:抱歉标签,这是safari的问题.
reference .net-4.0 project-reference visual-studio-2010 visual-studio
我非常喜欢在几个程序集之间分离功能,例如,外观到数据提供程序,数据提供程序的合同以及数据提供程序实现本身......在我看来,它可以轻松地对单个组件进行单元测试功能和将来很容易换掉一件事(在我的例子中,它使数据提供者易于更换).
如果我创建一个包含3个项目并使用项目引用的解决方案,那么当我在入口程序集上构建dotnet时,所有引用都将复制到输出文件夹中.当我通过dotnet打包条目汇编项目来创建NuGET包时,NuGET包中只包含条目组件(而不是契约或数据提供者)
这似乎是设计上的; .NET Core dotnet-pack 的文档说明了这一点
项目到项目的引用不会打包在项目中.目前,如果您具有项目到项目的依赖关系,则每个项目必须有一个包.
我的问题是 - 为什么会这样?如果我想将我的代码分成逻辑程序集,我不得不创建单独的NuGET包并引用它们,或者只是将我的所有代码都集成到一个程序集中.有没有办法在NuGET包中包含项目引用?
我正在使用VS2017/.NET Core v1.1(csproj,而不是xproj)
我有3个类库项目.让我们称他们为A,B和C.我已将project referenceA和B 添加到项目C中.
A&B正在建设中,没有任何错误或警告.
项目C中的代码(类文件)使用A和B中的公共类.当我在C中添加项目引用并查看C项目中的类文件(在构建项目C之前)时,我可以清楚地看到所有类和来自A和B的名称空间已解析.当我将鼠标悬停在类名(A或B中的类)上时,它也会显示它的正确名称空间.
我已经在项目引用上设置了Copy Local属性True.
然而,
bin\debug项目C 的文件夹中.为什么不复制引用?(我已经看到了关于这个问题的几个问题,但没有提供给他们的解决方案对我有用).net assemblies project-reference visual-studio-2010 visual-studio
在VS2010,Silverlight 4,.NET 4中,我有一个WCF服务和一个Silverlight应用程序,而Silverlight正在访问该类,而不是使用添加服务引用,而是通过共享合同.当然,这意味着我在Silverlight类库中有合同,并且该服务具有对该库的项目引用.
奇怪的是,这会在引用上产生一个/!\图标,并出现警告:
无法引用项目"SilverlightClassLibrary1".引用的项目针对不同的框架系列(Silverlight)
但是,引用工作正常(我可以使用我的Silverlight应用程序中的界面)并构建正常.
这是一个错误吗?我的猜测是肯定的,因为警告是在说谎,如果你添加一个程序集引用而不是项目引用,它也会消失.我提交了一个错误,此处还有更多信息.
我们将Team Foundation Server用于我们的主项目.每当我们在现场或非现场添加新员工时,我们总是需要手动设置参考.
是否可以将TFS复制/保存/传递dll's给新用户而无需每次都安装它们?
例如,我添加了新功能并安装DocumentFormat.OpenXml到我的项目中.设置它运行的代码并在我的机器上正常工作,我发布它工作得很好.我把所有东西都签入了TFS.
我的同事下载项目尝试构建它并且错误地说它不知道该怎么做DocumentFormat.OpenXml因为没有引用存在.
所以他们必须下载DocumentFormat.OpenXml,然后他们可以构建和运行项目.
有没有办法让TFS拯救我们这一步?
tfs dependencies project-reference external-dependencies visual-studio-2010
我有一个VS 2008 C#Web应用程序,其中包含一系列对自定义dll的项目引用.这些都是来自Web项目的相对路径.最近我注意到Clean Solution从web应用程序的bin\debug文件夹中删除了一些但不是全部的dll.例如:
<Reference Include="TowerCo.Utilities, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Components\TowerCo.Utilities\bin\Debug\TowerCo.Utilities.dll</HintPath>
</Reference>
<Reference Include="TowerCo.WebControls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Components\TowerCo.WebControls\bin\Debug\TowerCo.WebControls.dll</HintPath>
</Reference>
Run Code Online (Sandbox Code Playgroud)
第一个正常工作(干净清理它,新版本在重建时复制到web项目)但第二个没有.副作用是我不会自动获取依赖项的更改.
谢谢你的帮助.
c# ×4
.net ×3
build ×2
dependencies ×2
.net-4.0 ×1
.net-core ×1
assemblies ×1
git ×1
mef ×1
reference ×1
silverlight ×1
solution ×1
tfs ×1