2013-02-18 55 views
1
<ItemGroup> 
    <Reference Include="Facebook"> 
    <HintPath>E:\MSBuild\library\Facebook.dll</HintPath> 
</Reference> 
<Reference Include="Hammock.WindowsPhone"> 
    <HintPath>E:\MSBuild\library\Hammock.WindowsPhone.dll</HintPath> 
</Reference> 
</ItemGroup> 

我曾尝试加入的外.dll文件与上面的脚本,但得到的错误,如:如何使用MSBuild将外部.dll添加到Csproj?

错误CS0246:类型或命名空间名称“吊床”找不到 (是否缺少使用指令或程序集参照的文策) ?[E:\的MSBuild的\ src \ MobiReader.csproj]

任何一个请帮助..

+0

听起来更像是你缺少using指令比集引用。 – 2013-02-18 12:47:48

+0

在Visual Studio解决方案资源管理器 - >引用选项卡中查看Hammock.WindowsPhone.dll上是否有感叹号图标。 – Soundararajan 2013-02-18 12:49:43

+1

在Visual Studio解决方案资源管理器 - >参考选项卡中查看Hammock.WindowsPhone.dll上是否有感叹号图标。如果是这样,路径是错误的或装配无法解决。也取决于引用的dll的Target框架和您正在创建的项目。确保它们都相同。 (因为你似乎使用一些电话库,所以我有这个疑问:)) – Soundararajan 2013-02-18 13:12:29

回答

0
  1. 我会试着想出一个系统,以便您的ThirdPartyReferences不是绝对路径引用,而是某种相对路径。矿通常是这样的:

    .. \ ThirdPartyReferencs \ MyCoolDll.dll

我的结构通常是这样的

.\MySolution01.sln 
.\MyCSProj01\MyCSProj01.csproj 
.\MyCSProj02\MyCSProj02.csproj 
.\MyCSProjN\MyCSProjN.csproj 
.\ThirdPartyReferences\ 
.\ThirdPartyReferences\MyCoolDll.dll 
.\ThirdPartyReferences\SomePDFLibrary.dll 
  • 如果不是可能的话,你可以操纵csproj(xml)。 这里是一个紧密的例子(检查这个职位接受的答案):
  • How to add a linked file to a csproj file with MSBuild. (3.5 Framework)