我有Windows服务,希望通过MSMQ通过另一个应用程序与之通信。我要从客户端应用发送到服务的对象具有自定义设置器,如下所示。
[DataContract]
public class Example : Entity, IDisposable
{
private string directoryPath;
[DataMember]
public string DirectoryPath
{
get { return directoryPath; }
set
{
directoryPath = value;
Init(value);
}
}
}
我注意到,如果将其更改为正常的自动实现属性,则一切正常,因此出现问题。我真的想在每次更改属性时都将函数称为“ Init”。 使用自定义属性DirectoryPath,似乎甚至没有调用方法GetDirectory。
[ServiceBehavior]
public class MsmqService : IService
{
[OperationBehavior]
public void GetDirectory(WatchedDirectory watchedDirectory)
{
Logger.Log($"GetDirectory() called");
Logger.Log($"GetDirectory() - {watchedDirectory.DirectoryPath}");
}
[OperationBehavior]
public void GetTestMessage(string message)
{
Logger.Log($"GetTestMessage() - {message}");
}
}
那么有什么解决方案或配置可以通过WCF MSMQ发送这样的对象吗?