Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为WCF服务创建web界面_C#_Asp.net_Angularjs_Web Services_Wcf - Fatal编程技术网

C# 为WCF服务创建web界面

C# 为WCF服务创建web界面,c#,asp.net,angularjs,web-services,wcf,C#,Asp.net,Angularjs,Web Services,Wcf,我现在有两个项目——一个是从数据库提取的WCF服务,另一个是使用AngularJS作为接口的ASP.NET项目。我的问题是——有没有办法将两者结合成一个项目?我希望发生的事情:当运行WCF服务时,我的界面应该出现在浏览器中,而不是传统的XML页面。我知道可以将服务的dll粘贴到接口的文件结构中,但我希望接口位于服务中,而不是相反。这可能吗?有人知道怎么做吗?提前谢谢 是的,您可以将WCF和ASP.NET项目合并到单个项目中。只需确保将所有引用从WCF项目添加到ASP.NET项目以及任何web.c

我现在有两个项目——一个是从数据库提取的WCF服务,另一个是使用AngularJS作为接口的ASP.NET项目。我的问题是——有没有办法将两者结合成一个项目?我希望发生的事情:当运行WCF服务时,我的界面应该出现在浏览器中,而不是传统的XML页面。我知道可以将服务的dll粘贴到接口的文件结构中,但我希望接口位于服务中,而不是相反。这可能吗?有人知道怎么做吗?提前谢谢

是的,您可以将WCF和ASP.NET项目合并到单个项目中。只需确保将所有引用从WCF项目添加到ASP.NET项目以及任何web.config文件设置


你能提供问题第二部分的更多信息吗,“我的界面应该出现在浏览器中而不是传统的XML页面”

我强烈建议保留两个项目。在逻辑层中构建软件通常被认为是良好的体系结构。在您的案例中,您有一个业务/数据访问层和一个表示层。非常普遍。合并它们将是一个错误!随着时间的推移,你肯定会有交叉的顾虑;而如果将它们分开,则会有可测试的层

此外,将接口分离到另一个项目中通常是一个好主意,这样所有其他项目都将其作为整个解决方案的基础设施或框架


分层体系结构参考:

通常在运行WCF服务时,如果转到.svc URL,您会看到类似以下内容的页面:。我想运行我的WCF服务并查看我的界面。因此,我需要以某种方式将接口文件放入WCF项目中,而不是反过来。要查看单个方法,可以使用WCF测试客户端o rSoapUI。这里有些链接,所以我完全同意。但是,在运行指向我的接口的服务时,是否可能以某种方式仅仅拥有另一个子URL?我怀疑您想要的是这里,并排托管WCF和ASP.NET:或者,如果您只想通过任意URL提供对.SVC或WSDL的访问,您可以简单地将WCF接口和.SVC复制到一个目录中。我刚从WCF项目复制到Web上,在有趣的网站上得到了服务说明。。。我按照您的建议添加了Asp兼容模式,现在当我运行项目时,WCF测试客户端将打开。那么有没有办法打开我的客户端应用程序呢?不确定。project properties Web->Start Action是否更改为测试客户端?