public Type997Response ParseResponse(XElement element, IDictionary <string, XNamespace> namespaces) { XNamespace empty; if (!namespaces.TryGetValue(string.Empty, out empty)) { empty = XNamespace.None; } var model = new Type997Response { AcknowledgementCode = element.GetChildText(empty + "AcknowledgementCode"), ControlNbr = element.GetChildText(empty + "ControlNbr"), IdentifierCode = element.GetChildText(empty + "IdentifierCode"), SyntaxErrorCode1 = element.GetChildText(empty + "SyntaxErrorCode1"), SyntaxErrorCode2 = element.GetChildText(empty + "SyntaxErrorCode2"), SyntaxErrorCode3 = element.GetChildText(empty + "SyntaxErrorCode3"), SyntaxErrorCode4 = element.GetChildText(empty + "SyntaxErrorCode4"), SyntaxErrorCode5 = element.GetChildText(empty + "SyntaxErrorCode5"), }; var responseNoteLoopElement = element.Element(empty + "ResponseNoteLoop"); if (responseNoteLoopElement != null) { var nameElements = responseNoteLoopElement.Elements(empty + "ResponseNote"); foreach (var nameElement in nameElements) { var responseNoteModel = ParseResponseNote(nameElement, namespaces); model.AddResponseNote(responseNoteModel); } } return(model); }
public int InsertResponse(Type997Response model) { using (var connection = new SqlConnection(connectionString)) using (var command = connection.CreateCommand("csp997ResponseInsert")) { SqlParameter keyParameter; command.AddWithValue("@997_Key", model.HeaderKey) .AddIfNotEmptyOrDbNull("@IdentifierCode", model.IdentifierCode) .AddIfNotEmptyOrDbNull("@ControlNbr", model.ControlNbr) .AddIfNotEmptyOrDbNull("@AcknowledgementCode", model.AcknowledgementCode) .AddIfNotEmptyOrDbNull("@SyntaxErrorCode1", model.SyntaxErrorCode1) .AddIfNotEmptyOrDbNull("@SyntaxErrorCode2", model.SyntaxErrorCode2) .AddIfNotEmptyOrDbNull("@SyntaxErrorCode3", model.SyntaxErrorCode3) .AddIfNotEmptyOrDbNull("@SyntaxErrorCode4", model.SyntaxErrorCode4) .AddIfNotEmptyOrDbNull("@SyntaxErrorCode5", model.SyntaxErrorCode5) .AddOutParameter("@Response_Key", SqlDbType.Int, out keyParameter); if (connection.State != ConnectionState.Open) { connection.Open(); } command.ExecuteNonQuery(); if (keyParameter.Value == null) { throw new Exception(); } var responseKey = (int)keyParameter.Value; model.ResponseKey = responseKey; return(responseKey); } }