포맷터는 예외가 발생했습니다 메시지를 역 직렬화하는 동안 포맷터는 예외가 발생했습니다 :WCF 서비스 예외 : 메시지를 역 직렬화하는 동안
매개 변수 http://tempuri.org/:GetPatientInsuranceInformationResult를 역 직렬화하는 동안 오류가 발생했습니다. InnerException 메시지가 '1 행 1604 번째 오류입니다. 요소 'http://schemas.datacontract.org/2004/07/SubSonic:_currentValue ' 에 'http://schemas.datacontract.org/2004/07/System:DBNull '데이터 계약의 데이터가 포함되어 있습니다. 디시리얼라이저에는 계약서에 매핑되는 유형에 대한 정보가 없습니다. 'DBNull'에 해당하는 유형을 알려진 유형 목록에 추가하십시오. 예를 들어 KnownTypeAttribute 속성을 사용하거나 DataContractSerializer로 전달 된 알려진 유형 목록에 추가하십시오. '.
using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; using System.Xml.Serialization; namespace PatientPortal.Model.Data { [KnownType(typeof(System.DBNull))] [XmlInclude(typeof(DBNull))] [KnownType(typeof(PatientInsurance))] public partial class PatientInsurance { public string InsuranceTypeText { get { string insuranceTypeText = ""; //if (!string.IsNullOrEmpty(Convert.ToString(this.InsuranceType))) //{ // int InsuranceType = Convert.ToInt32(this.InsuranceType); // switch (InsuranceType) // { // case 1: // insuranceTypeText = "Primary Insurance"; // break; // case 2: // insuranceTypeText = "Secondary Insurance"; // break; // case 3: // insuranceTypeText = "Tertiary Insurance"; // break; // } //} return insuranceTypeText; } } public string PrimPolicyHolderNameDisplay { get { string primPolicyHolderNameDisplay = "display:none;"; if (!string.IsNullOrEmpty(Convert.ToString(this.PrimRelationship))) { primPolicyHolderNameDisplay = (this.PrimRelationship == "Self") ? "display:none;" : ""; } return primPolicyHolderNameDisplay; } } public string SecPolicyHolderNameDisplay { get { string secPolicyHolderNameDisplay = "display:none;"; if (!string.IsNullOrEmpty(Convert.ToString(this.SecRelationship))) { secPolicyHolderNameDisplay = (this.SecRelationship == "Self") ? "display:none;" : ""; } return secPolicyHolderNameDisplay; } } public string TerPolicyHolderNameDisplay { get { string terPolicyHolderNameDisplay = "display:none;"; if (!string.IsNullOrEmpty(Convert.ToString(this.TerRelationship))) { terPolicyHolderNameDisplay = (this.TerRelationship == "Self") ? "display:none;" : ""; } return terPolicyHolderNameDisplay; } } } }
을 다음과 같이 내가 비즈니스 로직에 부분 클래스를 작성했습니다 항상 subsonic.and에 의해 생성 된 자세한 내용
내 WCF 서비스 기능
public PatientInsurance GetPatientInsuranceInformation(int PatientKey)
{
PatientInsurance col = new PatientInsurance();
if (PatientKey > 0)
{
Query qry = new Query(PatientInsurance.Schema.TableName).WHERE(PatientInsurance.Columns.Deleted, false).AND(PatientInsurance.Columns.PatientKey, PatientKey);
col.LoadAndCloseReader(qry.ExecuteReader());
}
return col;
}
클래스의 InnerException를 참조하십시오.
모든 정보를 ... 당신은 정확히 우리가 무엇을해야합니까? – Bun
웹 서비스가받는 클래스는 물론 웹 서비스 자체를 게시 할 수 있습니까? – Nzall
Hello Nate Kerkhofs! 답장을 보내 주셔서 감사합니다. :) 내 질문을 업데이트했습니다. – user632299