コード例 #1
0
ファイル: MetastackJsonTest.cs プロジェクト: S031/MetaStack
 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"]);
     }
 }
コード例 #2
0
ファイル: ClientGate.cs プロジェクト: S031/MetaStack
        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);
        }