2

在我的 asp.net Web 应用程序的“服务”目录中有一个 WCF 服务。在

/Services/MyService.svc
/Services/MyService.svc.cs

将我的源代码复制到虚拟目录时一切正常。出于各种原因,我们真的希望预编译代码,但是当我们执行服务中断时。我假设现在“.cs”文件已预编译,“/Services”目录中不再有“MyService.svc.cs”。


错误

错误:无法从http://myurl.com/services/MyService.svc获取元数据


我的 .svc 标记是标准:

<%@ ServiceHost Language="C#" Debug="true" Service="MyNamespace.MyService" CodeBehind="MyNamespace.MyService.svc.cs" %>


我做错了什么,或者我可以在 WCF 客户端/服务上进行更改以允许 ASP.net 预编译?

4

2 回答 2

1

假设您谈论的是预编译站点,请查看此博客文章。基本上该网站必须是可更新的。

于 2011-04-08T18:39:32.783 回答
0

我的一位同事发现了这一点,并且有效。这不是最好的解决方案,但它确实有效。

http://social.msdn.microsoft.com/forums/en-US/wcf/thread/8c897f8e-2143-450e-a9f4-97d1f8702da7/

编辑:

更好的解决方案...我们使用一个部署项目,似乎该项目将项目名称指定为虚拟目录路径,除非另有说明。我们打开了我们的部署项目文件并将以下节点更新为适当的虚拟目录名称:

<SourceWebPhysicalPath>..\MyVirtualDirectory</SourceWebPhysicalPath>
于 2011-04-08T20:02:27.650 回答