我正在关注Walkthrough: Binding WPF Controls to a WCF Data Service
但是当我尝试发现该服务时,我收到一条错误消息,说从地址下载元数据时出错
它可能是什么?
修改:
它基本上创建了一个ASP NET Web App,添加了一个ADO Nen实体模型,添加了一个WCF数据服务,向该解决方案添加了一个WPF应用程序,并尝试从该服务添加一个新的数据源,出现了Add Service Reference ,它就出现了错误。
答案 0 :(得分:0)
只需将此添加到App.config中的ServiceModel配置
即可 <services>
<service name="AdventureWorksService"
behaviorConfiguration="metadataSupport">
<endpoint
address="http://localhost:12141/AdventureWorksService/mex"
binding="mexHttpBinding"
contract="IMetadataExchange"
/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="metadataSupport">
<serviceMetadata/>
</behavior>
</serviceBehaviors>
</behaviors>
答案 1 :(得分:0)
我的系统规范:
我正在执行相同的演练并按照this(https://www.codeproject.com/Articles/1087982/Create-a-WCF-DataService-in-Visual-Studio?display=Print)
传递了此错误更改了斜体部分
在“创建服务”中进行以下更改。和&#39;配置服务&#39;演练的一部分。
CodeProject文章中的相关部分是步骤11:通过nugget命令行为OData添加实体框架提供程序。
PM&GT;安装包Microsoft.OData.EntityFrameworkProvider -Pre
和步骤12:编辑 AdventureWorksService .svc文件并:
任选地:
using System.Data.Services.Providers; namespace AdventureWorksService { public class AdventureWorksService : EntityFrameworkDataService<AdventureWorks2014Entities> { // This method is called only once to initialize service-wide policies. public static void InitializeService(DataServiceConfiguration config) { // TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc. // Examples: // config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead); // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All); config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3; config.SetEntitySetAccessRule("SalesOrderHeaders", EntitySetRights.All); config.UseVerboseErrors = true; } } }
然而,现在我仍然坚持定义窗口的用户界面&#39;演练:(
编辑1:在回答here之后,我设法完成了演练。
Sryn