- 我认为这是一个循环引用问题........原来事实并非如此。
- 问题在于根本没有配置服务配置。
- 由于默认值非常低,发送大量数据将导致服务崩溃。
场景:
- 看来我可以在我的WCF服务循环引用,但使用 “[DataContract(IsReference =真)”,无助于帮助解决问题。
- 我收到错误“套接字连接被中止,这可能是由于处理您的消息时发生错误或远程主机超出接收超时或基础网络资源问题所致,本地套接字超时为'00:01 :00' “。
- 我错过了什么吗?
代码:
[DataContract(IsReference=true)]
public class Message
{
[DataMember]
public string TopicName { get; set; }
[DataMember]
public string EventData { get; set; }
[DataMember]
public SerializableDictionary<string, FuturesLineAsset> FuturesLineDictionary { get; set ; }
}
思考:
- 我不知道这是因为我有一个类FuturesAsset,有类型的属性BindableDictionary(这是自定义OBJECT),并且该财产持有FuturesLines资产列表。
- 见下文:
家长:
public class FuturesAsset
{
public string AssetName { get; set; }
public BindableDictionary<string, FuturesLineAsset> AssetLines { get; private set; }
public FuturesAsset()
{
AssetLines = new BindableDictionary<string, FuturesLineAsset>();
}
public FuturesAsset(string assetName)
{
AssetLines = new BindableDictionary<string, FuturesLineAsset>();
AssetName = assetName;
}
}
儿童:
public class FuturesLineAsset
{
public string ReferenceAsset { get; set; }
public string MID { get; set; }
public double LivePrice { get; set; }
public DateTime UpdateTime { get; set; }
public DateTime LastContributedTime { get; set; }
public double Spread { get; set; }
public double Correlation { get; set; }
public DateTime Maturity { get; set; }
public double ReferenceCurve { get; set; }
public FuturesLineAsset(string mID, string referenceAsset, double livePrice)
{
MID = mID;
ReferenceAsset = referenceAsset;
ReutersLivePrice = livePrice;
}
}
你如何从'套接字错误'获得循环引用?你有没有可以添加到帖子的错误信息? – 2010-08-09 16:15:43
因为当我搜索错误消息时,我得到了许多关于循环引用的结果。此外,错误只发生在我尝试发送ALOT数据时,否则它工作正常。 – Goober 2010-08-09 16:17:27