- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在创建一个 WCF 服务,昨天它似乎在 VS 测试客户端上运行良好,但今天它似乎在我尝试更改 web.config 文件后抛出此错误。
下面是代码和配置文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace TSService
{
interface name "IService1" in both code and config file together.
[ServiceContract]
public interface ITSService
[OperationContract]
List<Sel_Test> RunScript(List<SName> SNamesToRun, int LogPathIndex, RunEnvironment EnvironmentName, BOptions BType, NavOption NavEnum);
}
[DataContract]
public class STest
{
[DataMember]
public ScriptName SName { get; set; }
[DataMember]
public BOptions BTypeUsed { get; set; }
[DataMember]
public int SResult { get; set; }
}
[DataContract(Name= "SName")]
public enum SName
{
[EnumMember]
PXXXX1,
[EnumMember]
PXXXX2,
[EnumMember]
PXXXX3,
[EnumMember]
PXXXX4
}
[DataContract]
public enum NavOption
{
[EnumMember]
ContinueToNext,
[EnumMember]
Skip,
[EnumMember]
SignIn,
[EnumMember]
Registration
}
[DataContract]
public enum BOptions
{
[EnumMember]
FAA1,
[EnumMember]
ReFi,
[EnumMember]
RIE
}
[DataContract]
public enum RunEnvironment
{
[EnumMember]
D,
[EnumMember]
Q,
[EnumMember]
S,
[EnumMember]
P
}
[DataContract]
public enum PType
{
[EnumMember]
MAPD,
[EnumMember]
PDP,
[EnumMember]
MA,
[EnumMember]
Mgap
};
}
在我的配置文件中:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="TSServiceBehavior">
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="TSService.ITSService" behaviorConfiguration="TSServiceBehavior">
<endpoint address=""
binding ="basicHttpBinding"
contract="TSService.ITSService" />
<endpoint address="mex"
binding="mexHttpsBinding"
contract="IMetadataExchange" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding name ="TSServiceBinding" receiveTimeout="00:20:00" sendTimeout="00:20:00">
<security mode="None"/>
</binding>
</basicHttpBinding>
</bindings>
<!--<protocolMapping>
<add binding="basicHttpsBinding" scheme="https" />
</protocolMapping>-->
<serviceHostingEnvironment aspNetCompatibilityEnabled="False" multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<!--
To browse web app root directory during debugging, set the value below to true.
Set to false before deployment to avoid disclosing web app folder information.
-->
<directoryBrowse enabled="true"/>
</system.webServer>
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
在 SVC 标记中我有:
<%@ ServiceHost Language="C#" Debug="true" Service="TSService.ITSService" CodeBehind="TSService.svc.cs" %>
我在运行 VS WCFTest 客户端时遇到的错误:
Error: Cannot obtain Metadata from http://localhost:55178/TSService.svc If this is a Windows (R) Communication Foundation service to which you have access, please check that you have enabled metadata publishing at the specified address. For help enabling metadata publishing, please refer to the MSDN documentation at http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata Exchange Error URI: http://localhost:55178/TSService.svc Metadata contains a reference that cannot be resolved: 'http://localhost:55178/TSService.svc'. The requested service, 'http://localhost:55178/TSService.svc' could not be activated. See the server's diagnostic trace logs for more information.HTTP GET Error URI: http://localhost:55178/TSService.svc There was an error downloading 'http://localhost:55178/TSService.svc'. The request failed with the error message:--
Server Error in '/' Application.
--------------------------------------------------------------------------------
ServiceHost only supports class service types.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: ServiceHost only supports class service types.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[ArgumentException: ServiceHost only supports class service types.] System.ServiceModel.Description.ServiceDescription.GetService(Type serviceType) +12912843 System.ServiceModel.ServiceHost.CreateDescription(IDictionary`2& implementedContracts) +58 System.ServiceModel.ServiceHostBase.InitializeDescription(UriSchemeKeyedCollection baseAddresses) +146 System.ServiceModel.ServiceHost.InitializeDescription(Type serviceType, UriSchemeKeyedCollection baseAddresses) +46 System.ServiceModel.ServiceHost..ctor(Type serviceType, Uri[] baseAddresses) +146 System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(Type serviceType, Uri[] baseAddresses) +30 System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses) +494 System.ServiceModel.HostingManager.CreateService(String normalizedVirtualPath, EventTraceActivity eventTraceActivity) +1434 System.ServiceModel.HostingManager.ActivateService(ServiceActivationInfo serviceActivationInfo, EventTraceActivity eventTraceActivity) +52 System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath, EventTraceActivity eventTraceActivity) +598[ServiceActivationException: The service '/TSService.svc' cannot be activated due to an exception during compilation. The exception message is: ServiceHost only supports class service types..] System.Runtime.AsyncResult.End(IAsyncResult result) +495736 System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +178 System.ServiceModel.Activation.ServiceHttpModule.EndProcessRequest(IAsyncResult ar) +348782 System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar) +9662977
--------------------------------------------------------------------------------
Version Information:ÿMicrosoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18034 --.
最佳答案
根据评论将此标记为已回答 - “我通过在标记中将 ITSService 更改为 TSSErvice 来消除此错误。”
关于c# - ServiceHost 只支持类服务类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14864444/
我正在做以下事情 //Define the service host this._smeediPluginServiceHost = new ServiceHost(typeof(S
我正在创建一个 WCF 服务,昨天它似乎在 VS 测试客户端上运行良好,但今天它似乎在我尝试更改 web.config 文件后抛出此错误。 下面是代码和配置文件: using System; usin
我有一个名为 WcfService2 的服务(我知道的原始服务),它有一个带有公共(public)接口(interface)的 IService.cs 文件: namespace WcfService
我在服务应用程序中有一个 ServiceHost,它每 60 秒与 1700 个客户端通信。当我启动该服务时,它几乎立即攀升到大约 1500 个打开的句柄,然后在大约 5 分钟后继续增加另外 300
使用单个合约运行 ServiceHost 工作正常,如下所示: servicehost = new ServiceHost(typeof(MyService1)); servicehost.AddSe
我有一个 WCF 服务库和一个 Windows 服务作为主机。我想让 ServiceHost 从任何目录而不只是从当前目录加载 WCF 服务库(从该程序集获取服务类型)。 最佳答案 一种方法是配置 -
我的服务器中运行着一个 WCF 服务,还有几个客户端在根据自定义 UserNamePasswordValidator 对自己进行身份验证后使用该服务,就像 http://burcakcakiroglu
我们有一个 WCF SerivceHost(自托管),在 App.config 中配置了 XML。主机已经打开。 我们想在运行时(通过代码)更改服务绑定(bind)中的特定配置值。 不幸的是,我们目前
好吧,我花了一天的时间查看这个错误和所有的帖子,但我似乎仍然找不到哪里出错了。我可以与来自外部 Web 服务客户端的 Web 服务通信,但我无法从 VS 或 IIS 中浏览 .svc 文件。我正在发布
我正在创建一个带有端口 0 的 WCF ServiceHost 以获得动态分配的端口: ServiceHost host = new ServiceHost(typeof(MyClass), new
由于我目前正在学习使用 WCF 服务,所以我经常在 Internet 上遇到教程,其中提到在使用 WCF 服务时使用 ServiceHost。 这个 ServiceHost 到底是什么? 在我当前的项
我在学习 WCF 教程时遇到以下错误。 HTTP 无法注册 URL http://+:8000/ServiceModelSamples/Service/ .您的进程没有访问此命名空间的权限(有关详细信
我正在尝试在 Windows 2007 SP1 服务器上将 WCF ServiceHost 作为 NT 服务运行。 ServiceHost 负责托管单个服务端点:具有以下地址的 basicHttpBi
这是一个与这个类似的问题: Win32Exception @ ServiceHost.Open() for WCF service . 我有一台机器在下面的 ServiceHost.Open 调用上非
我正在考虑自行托管我的 WCF 服务,而不是使用 IIS。对我来说,一个大问题是我是否需要像 IIS 那样实例化多个服务主机,或者一个就足够了。 除了隔离的安全原因之外,多个服务主机是否有任何好处?
我只是在整理我的一些 WCF(自托管)代码,并意识到我的 ServiceHost 对象在最初设置后超出了范围,但我仍然可以连接到它。 public void StartMyService() {
我正在开发一个简单的 wcf 服务进行测试。当我使用本地 IIS 7.5 测试此服务时,它可以正常工作。但是当我将其托管在 Web IIS 中时,我收到此错误: The type 'WcfServic
我可以使用 ServiceHost.AddServiceEndpoint 添加端点。如何获取端点列表? 最佳答案 使用host.Description.Endpoints 关于.net - WCF:如
在 svc 文件中设置 Debug="true"是否会降低性能?它是否足够重要,足以保证在生产环境中将其设置为“false”? %@ ServiceHost Language="C#" **Debug
这里有一个新成员。很高兴看到这样一个整洁的社区。 经过一番研究,我决定在我的应用程序中使用 WCF 进行进程间通信,因此我使用了 NetNamedPipeBinding 绑定(bind)。 Servi
我是一名优秀的程序员,十分优秀!