Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.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
使用“公开WCF数据服务”;WCF服务应用程序“;项目_Wcf_Wcf Data Services_Odata - Fatal编程技术网

使用“公开WCF数据服务”;WCF服务应用程序“;项目

使用“公开WCF数据服务”;WCF服务应用程序“;项目,wcf,wcf-data-services,odata,Wcf,Wcf Data Services,Odata,我有一个这样的解决方案 Solution | +-- DataAccessLayer (EF Model) +-- ODataProject (Contains MyODataService that inherits from DataService) +-- SelfHost (Hosts the ODataProject.MyODataService in a console app) 我需要添加一个项目(称为IISHost),

我有一个这样的解决方案

Solution  
   |  
   +-- DataAccessLayer (EF Model)  
   +-- ODataProject    (Contains MyODataService that inherits from DataService)  
   +-- SelfHost        (Hosts the ODataProject.MyODataService in a console app)
我需要添加一个项目(称为IISHost),它将在IIS中承载该项目(用于一些身份验证和授权测试)

我看到的大多数WCF数据服务示例都使用ASP.NET Web应用程序。我可以用它,但它看起来很乱。我不是在制作网页,ASP.NET web应用程序项目的大部分内容似乎都围绕着网站(默认情况下,它有两个网页和一个母版页)

我想使用一个WCF服务应用程序项目,因为它似乎更关注我需要什么。但我不知道如何将它连接到我的ODataProject.MyODataService类


如果可能的话,是否有人可以发布如何执行此操作?

当您将WCF服务应用程序项目添加到解决方案时,您将看到添加了以下文件:

  • IService1.cs
  • 服务1.svc
  • 将它们重命名为对项目有意义的名称

    最好将服务接口与实际实现功能的代码放在一个单独的文件中

    要通过WCF公开的任何公共方法的接口(方法名称加上输入和返回参数)都应该在IService1.cs文件中定义。Service.svc文件有一个名为Service1.svc.cs的“代码隐藏”文件。这是编写IService1.cs中定义的方法的实际实现代码的地方

    右键单击Service1.svc文件并选择“查看标记”。然后,您将看到代码是如何链接到IIS的

    右键单击新的WCF服务应用程序,选择属性/Web。在“服务器”部分选择“使用本地IIS Web服务器”。确保将代码复制到虚拟目录。如果在services web.config中配置了元数据交换点(MEX)端点,则应该能够“浏览”IE中的.svc文件并获取服务描述


    很抱歉,如果上面解释的是你已经知道的,但我不确定你遗漏了什么。如果需要,请随时提供问题的更多详细信息,我将尽力提供帮助。

    将WCF服务应用程序项目添加到解决方案时,您将看到添加了以下文件:

  • IService1.cs
  • 服务1.svc
  • 将它们重命名为对项目有意义的名称

    最好将服务接口与实际实现功能的代码放在一个单独的文件中

    要通过WCF公开的任何公共方法的接口(方法名称加上输入和返回参数)都应该在IService1.cs文件中定义。Service.svc文件有一个名为Service1.svc.cs的“代码隐藏”文件。这是编写IService1.cs中定义的方法的实际实现代码的地方

    右键单击Service1.svc文件并选择“查看标记”。然后,您将看到代码是如何链接到IIS的

    右键单击新的WCF服务应用程序,选择属性/Web。在“服务器”部分选择“使用本地IIS Web服务器”。确保将代码复制到虚拟目录。如果在services web.config中配置了元数据交换点(MEX)端点,则应该能够“浏览”IE中的.svc文件并获取服务描述


    很抱歉,如果上面解释的是你已经知道的,但我不确定你遗漏了什么。如果需要,请随时提供问题的更多细节,我会尽力提供帮助。

    感谢您的回复,但这并不是我想要的。我使用的是OData(WCF数据服务),而不是WCF服务。我的OData资料在解决方案中的另一个项目中。我需要一种方法从WCF服务应用程序项目中引用它,并让它在IIS中运行。啊,对不起,我没有听说过WCF数据服务和OData。读过之后,我已经加入了不断增长的技术列表,我需要仔细阅读!也许这会有帮助?谢谢你的回复,不过这不是我想要的。我使用的是OData(WCF数据服务),而不是WCF服务。我的OData资料在解决方案中的另一个项目中。我需要一种方法从WCF服务应用程序项目中引用它,并让它在IIS中运行。啊,对不起,我没有听说过WCF数据服务和OData。读过之后,我已经加入了不断增长的技术列表,我需要仔细阅读!也许这会有帮助?