Добрый день.
Подскажите пожалуйста, как сделать запись данных которые получены web сервисом в таблицу?
Код сервиса.
namespace Terrasoft.Configuration.MeServiceTest { using System; using System.ServiceModel; using System.ServiceModel.Web; using System.ServiceModel.Activation; using System.Collections.Generic; using Terrasoft.Core; using Terrasoft.Web.Common; using Terrasoft.Configuration.Slack; using System.Runtime.Serialization; #region WCaseService [ServiceContract] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] public class MeServiceTest : BaseService { #region init private SystemUserConnection _systemUserConnection; private SystemUserConnection SystemUserConnection { get { return _systemUserConnection ?? (_systemUserConnection = (SystemUserConnection)AppConnection.SystemUserConnection); } } #endregion #region main: endPoints [OperationContract] [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)] public string ImportData(List<WCaseTemplate> Test) { string result = ""; if (Test != null) { foreach (WCaseTemplate wCase in Test) { //Тут нужен insert в таблицу Test result += "Name: " + wCase.Name + "\n Name: " + wCase.Description + "\n"; } } else result = "NULL"; return result; } #endregion } #endregion [DataContract] public class WCaseTemplate { [DataMember(Name = "Name")] public string Name { get; set; } [DataMember(Name = "Description")] public string Description { get; set; } } }
Пока не получается :(
Нравится
4 комментария
1 июля 2021 12:37
namespace Terrasoft.Configuration { using System; using System.ServiceModel; using System.ServiceModel.Web; using System.ServiceModel.Activation; using Terrasoft.Core.DB; using Terrasoft.Web.Common; [ServiceContract] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] public class MeServiceTest : BaseService { [OperationContract] [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Wrapped, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)] public void ImportData(string name, string description) { { Insert ins = new Insert(UserConnection) .Into("Test") .Set("Name", Column.Parameter(name)) .Set("Description", Column.Parameter(description)); ins.Execute(); } } } }
Рабочий вариант
Огромнейшее спасибо Павлу :)
2 июля 2021 12:37
но в таком случае не отработает событийный слой, т.е. не запустятся событийные БП
27 декабря 2021 09:59
Олег, добрый день!
Рекомендую ознакомится с этой статьёй о событийном слое.
Однако, если же ваш код является частью внешней сборки, то в таком случае на данный момент в системе нет возможности настроить в ней событийный слой.
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать