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

时间:2013-04-30 06:12:23

标签: c# oop class

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

    private string DOit(string uName, string pWord)
    {
      DOSTUFF.....
      return "Successfull";  
    }

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

    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方法。一种方法是将方法公之于众,但出于某种原因,人们说这是不好的。

任何帮助将不胜感激...... 谢谢

1 个答案:

答案 0 :(得分:1)

也许我错了,set { testUser= DOit(value); }看起来并不是很有用,因为如果你让这个工作起来并且你在做什么

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";
        }
    }

如果不符合您的需求,请添加更多信息