我有一个MVC5 Web应用程序(VS2012),它引用了WCF应用程序。 架构看起来像这样:
- Business library -- References to DAL - DAL library - WCF application -- References to Ressources -- References to Business -- References to DAL - Web application -- References to WCF application -- References to Ressources - AzureCloudService -- WebRole for Web application -- WebRole for WCF application - Ressources -- References to Business -- References to DAL
我已经为Web和Wcf应用程序创建了一个带有2个WebRoles的AzureCloudService。当我发布AzureCloudService时,不会抛出任何错误。 但是,当我转到Azure上的Web应用程序时,找不到许多引用或程序集。所以,我必须在.csproj文件中添加以下行:
<Reference Include="Tools, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" />
因为项目参考还不够:
<ProjectReference Include="..\Tools\Tools.csproj">
<Project>{guid}</Project>
<Name>Tools</Name>
</ProjectReference>
但是,当我添加Wcf应用程序和Ressources引用时,即使Web应用程序中没有项目引用,它也会请求Business。毕竟,我以下面的错误告诉我,我觉得我做错了。请有人提示或建议吗?
Couldn't find type for class Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35.
当然,.csproj中存在以下行,但似乎无法正常工作......或者我不了解某些内容。
<Reference Include="Microsoft.WindowsAzure.Diagnostics, Version=2.5.0.0, Culture=neutral, PublicKeyToken=somenumber">
<Private>True</Private>
</Reference>
答案 0 :(得分:0)
<强>更新强> 经过一些研究,我发现我的WebRoles中的所有项目引用都不包括在Cloud Services出版物中。
目前,我必须通过远程桌面访问云服务VM,并从我的本地&#34; / bin&#34;复制/粘贴.dll。目录为approot和siteroot&#34; / bin&#34;目录。 但是,当由于Azure可伸缩性而销毁并重新创建实例时,.dll就会消失。 所以,我对这些没有发送的项目dll感到绝望。
有什么想法吗?