Automatonymous Quick Start 不编译
Automatonymous Quick Start does not compile
请看下面的代码,这是我从最新的快速入门教程中摘取的:
//the messages
public class BasicRequest :
CorrelatedBy<Guid>
{
public Guid CorrelationId { get;set; }
public string Text { get; set; }
}
public class BasicResponse :
CorrelatedBy<Guid>
{
public Guid CorrelationId { get; set; }
public string Text { get; set; }
}
//the responder
public class Program
{
public static void Main()
{
Bus.Initialize(sbc =>
{
sbc.UseMsmq();
sbc.VerifyMsmqConfiguration();
sbc.UseMulticastSubscriptionClient();
sbc.ReceiveFrom("msmq://localhost/message_responder");
sbc.Subscribe(subs=>
{
subs.Handler<RequestMessage>(msg=> Bus.Instance.MessageContext<RequestMessage>().Respond(new BasiceResponse{Text = "RESP"+msg.Text}));
});
});
}
}
//the requester
public class Program
{
public static void Main()
{
Bus.Initialize(sbc =>
{
sbc.UseMsmq();
sbc.VerifyMsmqConfiguration();
sbc.UseMulticastSubscriptionClient();
sbc.ReceiveFrom("msmq://localhost/message_requestor");
});
Bus.Instance.PublishRequest(new RequestMessage(), x =>
{
x.Handle<ResponseMessage>(message => Console.WriteLine(message.Text));
x.SetTimeout(30.Seconds());
});
}
}
我从这里获取代码:https://automatonymous.readthedocs.io/en/latest/overview/request.html
我得到的错误是:
1) 总线不包含初始化的定义
2) 无法找到 RequestMessage
很多其他网页参考Bus.Initialise:https://automatonymous.readthedocs.io/en/latest/overview/saga.html
您似乎找到了远古文献。您正在使用 MSMQ 的事实清楚地表明它是一个多年未受支持的 MassTransit 版本。
关于在 MassTransit 中使用状态机的文档:
http://masstransit-project.com/MassTransit/advanced/sagas/automatonymous.html
将状态机与 MassTransit 结合使用的示例:
https://github.com/MassTransit/TheCoffeeShop
https://github.com/phatboyg/Demo-Registration
使用最新版本的 MassTransit 会更好。
请看下面的代码,这是我从最新的快速入门教程中摘取的:
//the messages
public class BasicRequest :
CorrelatedBy<Guid>
{
public Guid CorrelationId { get;set; }
public string Text { get; set; }
}
public class BasicResponse :
CorrelatedBy<Guid>
{
public Guid CorrelationId { get; set; }
public string Text { get; set; }
}
//the responder
public class Program
{
public static void Main()
{
Bus.Initialize(sbc =>
{
sbc.UseMsmq();
sbc.VerifyMsmqConfiguration();
sbc.UseMulticastSubscriptionClient();
sbc.ReceiveFrom("msmq://localhost/message_responder");
sbc.Subscribe(subs=>
{
subs.Handler<RequestMessage>(msg=> Bus.Instance.MessageContext<RequestMessage>().Respond(new BasiceResponse{Text = "RESP"+msg.Text}));
});
});
}
}
//the requester
public class Program
{
public static void Main()
{
Bus.Initialize(sbc =>
{
sbc.UseMsmq();
sbc.VerifyMsmqConfiguration();
sbc.UseMulticastSubscriptionClient();
sbc.ReceiveFrom("msmq://localhost/message_requestor");
});
Bus.Instance.PublishRequest(new RequestMessage(), x =>
{
x.Handle<ResponseMessage>(message => Console.WriteLine(message.Text));
x.SetTimeout(30.Seconds());
});
}
}
我从这里获取代码:https://automatonymous.readthedocs.io/en/latest/overview/request.html
我得到的错误是:
1) 总线不包含初始化的定义
2) 无法找到 RequestMessage
很多其他网页参考Bus.Initialise:https://automatonymous.readthedocs.io/en/latest/overview/saga.html
您似乎找到了远古文献。您正在使用 MSMQ 的事实清楚地表明它是一个多年未受支持的 MassTransit 版本。
关于在 MassTransit 中使用状态机的文档: http://masstransit-project.com/MassTransit/advanced/sagas/automatonymous.html
将状态机与 MassTransit 结合使用的示例: https://github.com/MassTransit/TheCoffeeShop
https://github.com/phatboyg/Demo-Registration
使用最新版本的 MassTransit 会更好。