如何在 c# 中创建多个属性的包装器保存

本文关键字:属性 包装 保存 创建 | 更新日期: 2023-09-27 18:36:58

>我想要一个包装器,无论是类还是任何列表类型,都来保存多个属性。我想存储这些属性的值并在以后检索。我创建了一个类并做了一些操作,如下所示。

     internal class Dependencies
    {
        public string issueID;
        public int dependencyCheck;
        public string jirastatus;
        public Dependencies()
        {
            this.issueID = string.Empty;
            this.dependencyCheck = 0;
            this.jirastatus = string.Empty;
        }
//Calling this function.
preapreIssuesList(IssueKey, JIRAtoken);
 private static void preapreIssuesList(string IssueKey,string JIRAtoken)
        {
            Dependencies dependeant = new Dependencies();
            if (!dependeant.issueID.Contains(IssueKey))
            {
                dependeant.issueID = IssueKey;
                JiraSoapServiceService jira = new JiraSoapServiceService();
                RemoteIssue ri = jira.getIssue(JIRAtoken, (IssueKey).ToString());
                dependeant.jirastatus = Enum.GetName(typeof(GetChangesets.JIRAOperations.JIRAStatus), Convert.ToInt32(ri.status));
                dependeant.dependencyCheck = 0;
            }
            else if (dependeant.issueID.Contains(IssueKey))
            {
                dependeant.dependencyCheck = 1;
            }
        }

如果我这样做,它会保存存储的值吗?还是采取List<>类型的Dependencies更好?谁能建议我回答?

如何在 c# 中创建多个属性的包装器保存

据我所知,它不会存储有关您的Dependencies对象的任何信息。在prepareIssuesList中创建它们后,它们超出了范围,然后垃圾收集器将处置它们。

您需要在某处保留对它们的引用以保留该信息。也许prepareIssuesList应该返回它创建的Dependencies对象,调用该方法的任何内容都可以存储该对象?

顺便说一句,上面的代码不会编译 - 对 prepareIssuesList 的调用是在类主体中进行的,编译器认为它是一个方法声明。另外,你的类被称为Dependencies,但似乎描述了一个项目,所以也许Dependency会是一个更好的名字?