我試着託管一個WCF圖書館服務與Windows服務項目,我安裝了服務,但是,當我啓動service.msc服務,服務啓動和立即關閉。繼顯示的消息之後:Windows服務託管一個WCF服務立即關閉
本地的Servicel服務 計算機已啓動,然後停止。 如果 某些服務未被其他服務 或程序使用,某些服務會自動停止。
的App.config
文件WCF和Windows服務項目是相同的,其計算方法如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation debug="true" />
</system.web>
<!-- When deploying the service library project, the content of the config file must be added to the host's
app.config file. System.Configuration does not support config files for libraries. -->
<system.serviceModel>
<services>
<service name="WorkMateWCF.Service1">
<endpoint address="" binding="netTcpBinding" bindingConfiguration=""
contract="WorkMateWCF.IService1">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration=""
contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:8523/WorkMate1" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
整個項目/解決方案是可以在這裏下載:https://skydrive.live.com/?cid=d358d316fa2c3a37&sc=documents&uc=1&id=D358D316FA2C3A37%21135#
可否請你指導我關於如何進一步進行。謝謝。
附加信息: 以下是windows service項目中service1.cs文件的代碼。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.ServiceModel;
using WorkMateWCF;
namespace WorkMateWinService
{
public partial class Service1 : ServiceBase
{
internal static ServiceHost MyServiceHost = null;
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
if (MyServiceHost != null)
{
MyServiceHost.Close();
}
MyServiceHost=new ServiceHost(typeof(Service1));
MyServiceHost.Open();
}
protected override void OnStop()
{
if (MyServiceHost != null)
{
MyServiceHost.Close();
MyServiceHost = null;
}
}
}
}
您需要在您的帖子中提供有關此問題的更多信息,而不是依賴可下載的項目。問題及其答案應該對所有人都有益。 –
可否請你告訴我需要更多的信息,因爲我認爲我提到了這個問題,我是新來的編碼,請讓我知道什麼是更多的信息是必需的。謝謝。 – surpavan
一個好的開始是在服務的Start方法中顯示代碼。任何其他可能相關的信息都是值得歡迎的。 –