/// <summary> /// Create a new business object. /// </summary> /// <param name="request">The request parameter object.</param> public byte[] Create(byte[] req) { var formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); Csla.Server.Hosts.WcfBfChannel.CreateRequest request; using (var buffer = new System.IO.MemoryStream(req)) { request = (Csla.Server.Hosts.WcfBfChannel.CreateRequest)formatter.Deserialize(buffer); } Csla.Server.DataPortal portal = new Csla.Server.DataPortal(); object result; try { result = portal.Create(request.ObjectType, request.Criteria, request.Context); } catch (Exception ex) { result = ex; } var response = new WcfResponse(result); using (var buffer = new System.IO.MemoryStream()) { formatter.Serialize(buffer, response); return buffer.ToArray(); } }
/// <summary> /// Create a new business object. /// </summary> /// <param name="request">The request parameter object.</param> public byte[] Create(byte[] req) { var formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); Csla.Server.Hosts.WcfBfChannel.CreateRequest request; using (var buffer = new System.IO.MemoryStream(req)) { request = (Csla.Server.Hosts.WcfBfChannel.CreateRequest)formatter.Deserialize(buffer); } Csla.Server.DataPortal portal = new Csla.Server.DataPortal(); object result; try { result = portal.Create(request.ObjectType, request.Criteria, request.Context); } catch (Exception ex) { result = ex; } var response = new WcfResponse(result); using (var buffer = new System.IO.MemoryStream()) { formatter.Serialize(buffer, response); return(buffer.ToArray()); } }
public WcfResponse Create(CreateRequest request) { Csla.Server.DataPortal portal = new Csla.Server.DataPortal(); object result; try { result = portal.Create(request.ObjectType, request.Criteria, request.Context, true).Result; } catch (Exception ex) { result = ex; } return new WcfResponse(result); }
public WcfResponse Create(CreateRequest request) { Csla.Server.DataPortal portal = new Csla.Server.DataPortal(); object result; try { result = portal.Create(request.ObjectType, request.Criteria, request.Context, true).Result; } catch (Exception ex) { result = ex; } return(new WcfResponse(result)); }
/// <summary> /// Create and initialize an existing business object. /// </summary> /// <param name="request">The request parameter object.</param> #pragma warning disable 1998 public async Task <HttpResponse> Create(CriteriaRequest request) #pragma warning restore 1998 { var result = new HttpResponse(); try { request = ConvertRequest(request); // unpack criteria data into object object criteria = GetCriteria(request.CriteriaData); if (criteria is Csla.DataPortalClient.PrimitiveCriteria) { criteria = ((Csla.DataPortalClient.PrimitiveCriteria)criteria).Value; } var objectType = Csla.Reflection.MethodCaller.GetType(AssemblyNameTranslator.GetAssemblyQualifiedName(request.TypeName), true); var context = new DataPortalContext( (IPrincipal)MobileFormatter.Deserialize(request.Principal), true, request.ClientCulture, request.ClientUICulture, (ContextDictionary)MobileFormatter.Deserialize(request.ClientContext), (ContextDictionary)MobileFormatter.Deserialize(request.GlobalContext)); var prtl = new Csla.Server.DataPortal(); var dpr = await prtl.Create(objectType, criteria, context, true); if (dpr.Error != null) { result.ErrorData = new HttpErrorInfo(dpr.Error); } result.GlobalContext = MobileFormatter.Serialize(dpr.GlobalContext); result.ObjectData = MobileFormatter.Serialize(dpr.ReturnObject); } catch (Exception ex) { result.ErrorData = new HttpErrorInfo(ex); throw; } finally { result = ConvertResponse(result); } return(result); }
/// <summary> /// Create and initialize an existing business object. /// </summary> /// <param name="request">The request parameter object.</param> #pragma warning disable 1998 public async Task<HttpResponse> Create(CriteriaRequest request) #pragma warning restore 1998 { var result = new HttpResponse(); try { request = ConvertRequest(request); // unpack criteria data into object object criteria = GetCriteria(request.CriteriaData); if (criteria is Csla.DataPortalClient.PrimitiveCriteria) { criteria = ((Csla.DataPortalClient.PrimitiveCriteria)criteria).Value; } var objectType = Csla.Reflection.MethodCaller.GetType(AssemblyNameTranslator.GetAssemblyQualifiedName(request.TypeName), true); var context = new DataPortalContext( (IPrincipal)MobileFormatter.Deserialize(request.Principal), true, request.ClientCulture, request.ClientUICulture, (ContextDictionary)MobileFormatter.Deserialize(request.ClientContext), (ContextDictionary)MobileFormatter.Deserialize(request.GlobalContext)); var prtl = new Csla.Server.DataPortal(); var dpr = await prtl.Create(objectType, criteria, context, true); if (dpr.Error != null) result.ErrorData = new HttpErrorInfo(dpr.Error); result.GlobalContext = MobileFormatter.Serialize(dpr.GlobalContext); result.ObjectData = MobileFormatter.Serialize(dpr.ReturnObject); } catch (Exception ex) { result.ErrorData = new HttpErrorInfo(ex); throw; } finally { result = ConvertResponse(result); } return result; }