C# 当处理具有多个参数的方法时,如何在类属性中使用多个集合?

C# 当处理具有多个参数的方法时,如何在类属性中使用多个集合?,c#,oop,class,C#,Oop,Class,我有一个包含以下方法的类(类名为ZipLoad): 现在我想用我的程序将参数传递给类,但是有两个参数。如果有一个参数,我只需这样做: private string testUser; public string getSetUser { get { return testUser; } set { testUser= DOit(value); } } 然后使用我的Windows窗体应用程序传递参数 ZipLoad myZ

我有一个包含以下方法的类(类名为ZipLoad):

现在我想用我的程序将参数传递给类,但是有两个参数。如果有一个参数,我只需这样做:

    private string testUser;
    public string getSetUser
    {
        get { return testUser; }
        set { testUser= DOit(value); }
    }
然后使用我的Windows窗体应用程序传递参数

     ZipLoad myZipLoad = new ZipLoad();

     string report;
     myZipLoad.testUser = "userName";
     report= myZipLoad.getSetUser;
我的问题是如何使用类中的公共属性将参数传递给DOit方法。一种方法是公开该方法,但出于某种原因,人们认为这是不好的

任何帮助都将不胜感激。。。
谢谢你

也许我错了,但是设置{testUser=DOit(value);}看起来对你正在尝试的东西没有多大用处,因为如果你让它工作起来并且你正在做的话

myZipLoad.testUser = "userName";
report= myZipLoad.getSetUser;
string user = myZipLoad.testUser; //<- user == "Successfull"
myZipLoad.testUser=“userName”;
report=myZipLoad.getSetUser;

字符串user=myZipLoad.testUser//方法是与外部世界的接口。将其私有化对您没有多大好处。您的类的状态(成员字段)应该是私有的,而不是您的方法。是否有任何方法不必将“DOit_aka_Login()”方法公开???我是说为什么要使用属性呢???我们为什么不直接将参数传递给Doit_aka_Login()方法???是的,就是这样。。。所以现在我不需要用另外两个属性得到{}。。是吗???@WaqasAli是的,但是您也可以将其设置为private getter
private get{return…;}
此外,如果该方法不返回任何内容,例如void,该怎么办。。。那么我该怎么做才能完成任务?@WaqasAli如果你测试它,你会发现你可以做
myZipLoad.testUser=“userName”
,但你不能做
string myString=myZipLoad.testUser
因为getter是
私有的
您也可以将其设置为
受保护的
myZipLoad.testUser = "userName";
report= myZipLoad.getSetUser;
string user = myZipLoad.testUser; //<- user == "Successfull"
    class Program
    {
        static void Main(string[] args)
        {
            ZipLoad myZipLoad = new ZipLoad();

            string report;
            myZipLoad.TestUser = "userName";
            report = myZipLoad.Stat; //<- modified
        }
    }


    class ZipLoad
    {
        #region private Values

        private string testUser;
        private string pWord;

        #endregion

        #region Properties

        public string TestUser
        {
            get { return testUser; }
            set { testUser = value; }
        }

        public string PWord
        {
            private get { return pWord; }
            set { pWord = value; }
        }

// ADDED
        public string Stat
        {
            get { return DOit_aka_Login(testUser, pWord); }
        }

        #endregion

        private string DOit_aka_Login(string uName, string pWord) //<- modified
        {
            // now you may need to check the input  if(uName =="" && pWord==""){...}
            //DOSTUFF.....
            return "Successfull";
        }
    }