致电Get&在类外设置方法

时间:2016-05-02 15:07:03

标签: c#

我如何从另一个类调用crypt方法并插入setmethod或getmethod?密码是从文本框加载的。

public partial class LogUser : Form
{

   private string userPassword;
   // textbox where user insert password 
   public string GetUserPassword()
   {
      return userPassword;
   }

   public void SetUserPassword(string userPassword)
   {
      this.userPassword = userPassword;
   }

   private void loginUser_Click(object sender, EventArgs e)
   {
          MyFunctions.Crypt(GetUserPassword());
          // compilator error.
   }      // can't convert from 'string' to 'Project.LogUser'
}

class MyFunctions
{



   public static string Crypt(string cryptPassword)
   {
      Random ra = new Random();
      int key = Rando.Rand(ra, 22, 4);
      LogUser cryptingPw = new LogUser();
      string crypt = Encrypting(cryptPassword, key);
      return crypt;
   }
}

我已经更新了我的问题。所以加密方法不是一个对象......

2 个答案:

答案 0 :(得分:6)

您正在将方法GetUserPassword()的返回值传递给Crypt方法。 该方法期望LogUser作为输入。这不是一个字符串。

我认为您希望修改Crypt方法的签名以接受字符串作为输入,以消除编译错误。

答案 1 :(得分:0)

代替此代码:

MyFunctions.Crypt(GetUserPassword());

编写此代码:

LogUser objLogUser = new LogUser();
MyFunctions.Crypt(objLogUser);