【发布时间】:2015-07-23 06:32:26
【问题描述】:
这是我的项目:
IWCFService.cs
[ServiceContract]
public interface IWCFService
{
[OperationContract]
void SetValue(string value);
[OperationContract]
bool SaveToDatabase();
}
WCFService.cs
public class WCFService : IWCFService
{
public void SetValue(string value);
{
//Code insert value
}
public bool SaveToDatabase);
{
//Code save values to database
}
}
WindowsServiceHost.cs
public partial class WindowsServiceHost : ServiceBase
{
private ServiceHost _host;
public WindowsServiceHost()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
_host = new ServiceHost(typeof (WCFService.WCFService));
_host.Open();
}
protected override void OnStop()
{
_host.Close();
}
}
frmClient.cs
public partial class frmClient : Form
{
private WCFServiceClient _client = new WCFServiceClient();
public frmClient()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
_client.SetValue(39);
MessageBox.Show("Done!");
}
private void button2_Click(object sender, EventArgs e)
{
_client.SetValue(50);
MessageBox.Show("Done!");
}
private void button3_Click(object sender, EventArgs e)
{
_client.SaveToDatabase();
MessageBox.Show("Done!");
}
}
我可以将共享内存放在哪里(从多个客户端设置值)? (在 WCF 服务或 Windows 服务中)
我可以从 Windows 服务调用 SaveToDatabase() 吗? (5秒后自动调用)
谢谢!
【问题讨论】:
标签: c# winforms wcf windows-services