C# Can';找不到服务的WCF终结点
我目前正在将WCF服务添加到我的项目中,但连接到该服务时遇到问题。我还有另外两个配置类似的服务,运行良好,我找不到我的新服务无法连接的原因。当我尝试连接到端点时,我遇到以下问题: 找不到作为ServiceHost指令中的服务属性值提供的或配置元素system.serviceModel/serviceHostingEnvironment/serviceActivations中提供的类型“MyProject.MyServices.MyService,MyProject,Version=1.5.8.20715,Culture=neutral,PublicKeyToken=PUBLICKEY” 我已经尝试将.svc中的服务属性设置为其他两个实现,这些都可以正常工作 myService.svcC# Can';找不到服务的WCF终结点,c#,asp.net,wcf,C#,Asp.net,Wcf,我目前正在将WCF服务添加到我的项目中,但连接到该服务时遇到问题。我还有另外两个配置类似的服务,运行良好,我找不到我的新服务无法连接的原因。当我尝试连接到端点时,我遇到以下问题: 找不到作为ServiceHost指令中的服务属性值提供的或配置元素system.serviceModel/serviceHostingEnvironment/serviceActivations中提供的类型“MyProject.MyServices.MyService,MyProject,Version=1.5.8.2
<%@ServiceHost language="C#" Debug="true"
Factory="Microsoft.SharePoint.Client.Services.MultipleBaseAddressDataServiceHostFactory, Microsoft.SharePoint.Client.ServerRuntime, Version=14.0.0.0, Culture=neutral, PublicKeyToken=PUBLICKEYTOKEN"
Service="MyProject.MyServices.MyService, $SharePoint.Project.AssemblyFullName$" %>
MyService.cs
/// <inheritdoc />
//[SuppressMessage("Microsoft.Security", "CA2135", Justification = "Using Level 1 Security Rules as per Chuck's SP2016 Upgrade.")]
//[SharePointPermission(SecurityAction.LinkDemand, ObjectModel = true)]
//[SharePointPermission(SecurityAction.InheritanceDemand, ObjectModel = true)]
[BasicHttpBindingServiceMetadataExchangeEndpoint]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, IncludeExceptionDetailInFaults = true)]
[ServiceContract]
public class MyService : DataService<MyDataContext>
{
private SPWeb _web;
#region Constructor
/// <summary>
/// Default constructor
/// </summary>
public MyService() : base()
{
}
#endregion
#region Methods
/// <summary>
/// Method for handling the incoming request
/// </summary>
/// <param name="args">The arguments for the request</param>
override protected void OnStartProcessingRequest(ProcessRequestArgs args)
{
}
[OperationContract]
public string AddTwoNumbers()
{
return "I love WCF Services";
}
#endregion
}
///
//[SuppressMessage(“Microsoft.Security”、“CA2135”,justify=“根据Chuck的SP2016升级使用1级安全规则”)]
//[SharePointPermission(SecurityAction.LinkDemand,ObjectModel=true)]
//[SharePointPermission(SecurityAction.InheritanceDemand,ObjectModel=true)]
[BasicHttpBindingServiceMetadataExchangeEndpoint]
[AspNetCompatibilityRequirements(RequirementsMode=AspNetCompatibilityRequirementsMode.Required)]
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall,IncludeExceptionDetailInFaults=true)]
[服务合同]
公共类MyService:DataService
{
私人SPWeb(uweb),;
#区域构造函数
///
///默认构造函数
///
public MyService():base()
{
}
#端区
#区域方法
///
///处理传入请求的方法
///
///请求的参数
覆盖StartProcessingRequest(ProcessRequestArgs-args)上受保护的void
{
}
[经营合同]
公共字符串addTwoNumber()
{
返回“我爱WCF服务”;
}
#端区
}
我希望出现“未找到终结点”,但我得到的是上面描述的serviceActivations错误。我认为,WCF web应用程序的文件/目录结构不正确,导致此问题,无法找到正确的文件。
有关详细信息,请参阅以下链接。
如果问题仍然存在,请随时通知我。我认为,导致此问题的WCF web应用程序的文件/目录结构不正确,无法找到正确的文件。
有关详细信息,请参阅以下链接。
如果问题仍然存在,请随时通知我。您的错误消息显示类型:
MyProject.MyServices.MyDataService
,而代码和svc似乎都指向类型MyProject.MyServices.MyService
,因此在其他地方,您的问题中的位中没有显示您有一个过时的引用,您需要进行调整。是否有一个web.config的serviceModel/services/service定义无人参与?很抱歉,我更改了堆栈溢出的实际项目名称。该项目不允许我们有一个web配置,但我已经接近缩小这个问题。MyDataContext扩展了DbContext,我认为WCF版本4不支持它。当我尝试升级版本时,我限制使用的sharepoint版本依赖于版本4,因此我不确定是否能够修复它。我在其他线程中看到过,将WCF数据服务升级到5+可能会解决这个问题。你概括名称是完全可以理解的。请记住,试图回答问题的用户假定您在问题中提供了一个答案。它防止了像我一样的混乱。很好,只是编辑了错误。您的错误消息显示类型:MyProject.MyServices.MyDataService
,而代码和svc似乎都引用了类型MyProject.MyServices.MyService
,所以在其他地方,你的问题中没有显示你有一个陈旧的参考,你需要调整。是否有一个web.config的serviceModel/services/service定义无人参与?很抱歉,我更改了堆栈溢出的实际项目名称。该项目不允许我们有一个web配置,但我已经接近缩小这个问题。MyDataContext扩展了DbContext,我认为WCF版本4不支持它。当我尝试升级版本时,我限制使用的sharepoint版本依赖于版本4,因此我不确定是否能够修复它。我在其他线程中看到过,将WCF数据服务升级到5+可能会解决这个问题。你概括名称是完全可以理解的。请记住,试图回答问题的用户假定您在问题中提供了一个答案。它防止了像我一样的混乱。很好,只是编辑了错误。我认为问题是MyDataContext从实体框架扩展了DbContext,它在解释类型时遇到了问题。不过,我可以使用带有iQueryTables的具体类(DataService)使其工作。解决方案应该是将WCF升级到更高版本,但我一直使用的sharepoint版本不允许升级,因此我必须找到另一个解决方案。我认为问题在于MyDataContext从entity framework扩展了DbContext,并且它在解释类型时遇到了问题。不过,我可以使用带有iQueryTables的具体类(DataService)使其工作。解决方案应该是将WCF升级到更高版本,但我一直使用的sharepoint版本不允许升级,因此我必须找到另一个解决方案。