C# net::错误\u连接\u重置REST WCF
您好,我创建了rest wcf,并尝试进行一些对象调用,调用完成后返回对象列表,我得到消息:C# net::错误\u连接\u重置REST WCF,c#,.net,wcf,rest,C#,.net,Wcf,Rest,您好,我创建了rest wcf,并尝试进行一些对象调用,调用完成后返回对象列表,我得到消息: GET http://localhost/ESService/ESService.svc/GetExecutiveSummariesByBuyer?buyerId=1 net::ERR_CONNECTION_RESET 我查过谷歌,有一些信息可以添加到webconfig: <behavior name="restfulBehavior"> <dataContractSeri
GET http://localhost/ESService/ESService.svc/GetExecutiveSummariesByBuyer?buyerId=1 net::ERR_CONNECTION_RESET
我查过谷歌,有一些信息可以添加到webconfig:
<behavior name="restfulBehavior">
<dataContractSerializer maxItemsInObjectGraph="1234567" />
<webHttp />
</behavior>
--编辑
我忘记添加接口定义:)
[服务合同]
公共接口服务{。。。。
[经营合同]
[WebInvoke(
Method=“GET”,
ResponseFormat=WebMessageFormat.Json,
UriTemplate=“GetExecutiveSummariesByBuyer?buyerId={buyerId}”)]
列出GetExecutiveSummariesByBuyer(字符串BuyerId);
当我将datetime更改为string时,它正在发挥作用。有什么想法吗?这是一个Javascript代码示例,可以实现这种情况:)
这可能是因为很多可能的原因导致连接被重置。其中之一可能是GetExecutiveSummariesByBuyer方法中的异常。能否请您发布GetExecutiveSummariesByBuyer方法的代码?问题在于DateTime格式:)当我将其用作字符串时,当我传递整个DateTime对象时,它会工作,它会重置连接…我可以确认,DateTime类型也正在重置我的连接。是否需要解决此问题?:)在我的情况下,相同的问题是由DateTime.MinValue“1/1/0001 12:00:00 AM”引起的-通过使用可为空的DateTime-null而不是min value进行修复。
using System;
using System.Runtime.Serialization;
namespace ESContracts
{
[DataContract]
public class ExecutiveSummaries
{
[DataMember] public int BuyerID;
[DataMember] public DateTime CheckOutDate;
[DataMember] public int CheckOutPerson;
[DataMember] public DateTime CreateDate;
[DataMember] public int CreatedBy;
[DataMember] public int CustomerID;
[DataMember] public bool Deleted;
[DataMember] public int DeletedBy;
[DataMember] public DateTime DeletedDate;
[DataMember] public int ESStatusID;
[DataMember] public int ID;
[DataMember] public bool IsDecisionGroup;
[DataMember] public bool IsWritingStyleFormal;
[DataMember] public int ModifiedBy;
[DataMember] public DateTime ModifiedDate;
[DataMember] public string OpportunityTitle;
[DataMember] public string Step2_Achievement;
[DataMember] public int Step2_ComplianceID;
[DataMember] public string Step2_Intention;
[DataMember] public string Step2_SolutionAttribute;
}
}
[ServiceContract]
public interface IESService{....
[OperationContract]
[WebInvoke(
Method = "GET",
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "GetExecutiveSummariesByBuyer?buyerId={BuyerId}")]
List<ExecutiveSummaries> GetExecutiveSummariesByBuyer(string BuyerId);
String.prototype.FromWCFToJSONDate = function () {
return new Date(parseInt(this.match(/\/Date\(([0-9]+)(?:.*)\)\//)[1]));
};
Date.prototype.JSONDateTOWCF = function () {
var dt = this;
var timestamp = dt.getTime();
var date = '/Date(' + timestamp + '+0000)/'; // returns local time
return date;
};