我正在尝试学习如何使用Mass Transit here。
我制作了一个带有两个控制台的项目,可以让他们互相交谈。基本上我只是跟着它附带的样本,并且有点学习。
我现在正试图让Mass Transit与Web应用程序一起工作。我在VS2010中创建了一个带有示例项目内容的新Web应用程序,只是在页面上添加了一个按钮。这个想法是,当你点击按钮时,它会向队列添加一条消息,我只是要为星巴克(大众运输带来的那个)提供示例应用程序,它从队列中读取消息(Cashier或Barista控制台) )。基本上,我试图将星巴克的“客户”计划变成网络界面。
问题:
我阅读了文档,看来我必须在Application_Start上的全局应用程序中初始化服务总线。我这样做,然后在按钮上调用它。我只是用:
sbc.UseMsmq();
sbc.ReceiveFrom("msmq://localhost/test_queue");
sbc.UseControlBus();
在初始化中。
我刚才拥有的按钮:
var message = new NewOrderMessage
{
CorrelationId = _transactionId,
Item = "1",
Name = "1",
Size = "1",
};
bus.Publish(message);
我也尝试过:
Bus.Instance.Publish(message, x => x.SetResponseAddress(Bus.Instance.Endpoint.Address.Uri));
以及其他一大堆东西。
它会抛出错误,但是:
ServiceBusConfiguratorImpl.cs
这句话说:
builder = configurator.Configure(builder);
错误是:
Could not load file or assembly 'Stact, Version=1.1.0.0, Culture=neutral, PublicKeyToken=b800c4cfcdeea87b' or one of its dependencies. The system cannot find the file specified
所以我有点失落......
就像我说的,我真正想做的就是将“客户”程序从星巴克样本更改为网络界面,这样我就可以学习如何使用公共交通工具来进行网络应用。
如果有人有一个工作样本或如何让这个运行的教程,将不胜感激。我在谷歌搜索了几个小时,但没有发现任何有用的东西....:S
提前致谢,
最基本的问候, 罗宾
.net,公共交通,MSMQ,C#,服务总线
答案 0 :(得分:1)
所以其中一个引用,尤其是Stact,不在网站的bin文件夹中。首先确保将NuGet引用复制到Web应用程序中。对于您遇到的任何问题,我还会考虑联系邮件列表https://groups.google.com/forum/?fromgroups=#!forum/masstransit-discuss。通常比这里得到更好的回应。
据我所知,你的代码似乎是正确的。刚出版到公交车是你想要做的。装配错误只是意味着你错过了什么。一旦你过了那么它就会看到你是否有另一个错误。祝你好运!