public void JsonWriterObjectTest() { using (FileLog logger = new FileLog(" MetaStackJsoJsonWriterObjectTestn.", new FileLogSettings() { DateFolderMask = "yyyy-MM-dd" })) { ActionInfo a = new ActionInfo { ActionID = "TestActionID", AssemblyID = "S031.MetaStack.Core.Actions", ClassName = "S031.MetaStack.Core.Actions.ActionInfo", Description = "public sealed class ActionInfo : InterfaceInfo", EMailOnError = true, IID = 1, InterfaceID = "IActionsTest", InterfaceName = "IActionsName", Name = "Test ActionInfo", TransactionSupport = TransactionActionSupport.Support, WebAuthentication = ActionWebAuthenticationType.Basic }; for (int i = 0; i < 3; i++) { string name = $"Attrib{i}"; ParamInfo p = new ParamInfo() { Agregate = $"COUNT({i})", AttribName = name, AttribPath = name, DataType = "int", DefaultValue = "0", Dirrect = ParamDirrect.Input, DisplayWidth = 10, FieldName = name, Name = $"Name of {name}", Position = i, Required = true }; a.InterfaceParameters.Add(p); } var str = a.ToString(); logger.Debug(str); a = ActionInfo.Parse(str); Assert.Equal(str, a.ToString()); var json = (JsonObject)(new JsonReader(str).Read()); logger.Debug((string)json["InterfaceParameters"][2]["Agregate"]); } }
public static ActionInfo GetActionInfo(string actionID) { if (!_actionss.TryGetValue(actionID, out ActionInfo ai)) { var dr = Execute("Sys.GetActionInfo", new DataPackage(new string[] { "ActionID" }, new object[] { actionID })); if (dr.Read()) { ai = ActionInfo.Parse((string)dr["ActionInfo"]); } else { ai = null; } _actionss.TryAdd(actionID, ai); } return(ai); }