2017-05-18 101 views
2

我目前使用NServiceBus6。我成功地将我的web api提供的消息提交给了windows服务托管的端点。在我的本地机器上,我的开发环境中一切正常。我在所有端点配置中都使用“NewtonsoftSerializer”。我现在已将我的解决方案部署到服务器。我的服务现在作为Window Services托管,而不是控制台应用程序。服务Insight是现在报告一个NServiceBusDeserialization例外:在根数据:部署后NServiceBus反序列化异常

在试图从传输消息中提取逻辑消息8221d498-81ca-406E-8ab6-a77701065f1f ---> System.Xml.XmlException发生错误级别无效。行1,位置1.

一对项目伸出。答:我没有使用XmlSerialization。 B.我在开发环境中没有序列化问题。我将不胜感激任何帮助提供谢谢。

邮件类:

public class CreateSearchRequest : ICommand 
{ 
    public SearchRequest Request { get; set; } 
} 

SearchRequest:

public class SearchRequest : Resource 
{ 
    public string User { get; set; } 
    public string SearchName { get; set; } 
    public SearchCriteriaSimple Criteria { get; set; } 
    public string Status { get; set; } 
    public DateTime RequestBegin { get; set; } 
    public DateTime RequestEnd { get; set; } 
    public int Records { get; set; } 
    public string OutputFileName { get; set; } 
    public string FtpLocation { get; set; } 
    public DateTime CreateDate { get; set; } 
} 

SearchRequestSimple:

public class SearchCriteriaSimple 
{ 
    public string Name { get; set; } 
    public List<Dictionary<string, string>> Criteria { get; set; } 
} 

资源:天青DocumentDbResource类

+0

它在您的开发环境中可以与ServiceControl正常工作吗? –

+0

只要我在控制台中托管NServiceBus端点,它就会工作。我将端点安装为Windows服务,而我现在在我的开发环境中收到同样的错误 – William

+0

您能否提供更多详细信息(日志),可能会将其发送到特定的.NET支持以及Sean Farmar的地址? –

回答

0

我很尴尬到说。但我已经找到了这个问题。在Visual Studio开发过程中,我在ProgramService.cs的Task AsyncOnStart()方法中配置了端点。似乎一旦我安装NServiceBus主机,我还必须通过端点配置提供配置。一旦我匹配序列化那里的问题就消失了。