使用集合列表方法

时间:2016-11-08 16:00:33

标签: c#

here when I press login

and here when I press yes

正在使用C#进行ATM项目,我的老师需要完成此任务而不使用数据库,所以我创建了一个类,其中包含一个列表,用于在创建新帐户时存储所有数据,但问题是是我不能使用数据登录(我不知道如何做bool编码的事情,以确定该项目是否在列表中)

注意:在登录时,您应输入您的姓名和密码以登录

这是我的创建帐户表单代码

public partial class NewAccountForm : Form
{
    public NewAccountForm()
    {
        InitializeComponent();
    }
    Accounts account1;


    private void btnCreate_Click(object sender, EventArgs e)
    {
    }

    private void button1_Click(object sender, EventArgs e)
    {

    }

    private void button2_Click(object sender, EventArgs e)
    {
        Form1 login = new Form1();
        this.Hide();
        login.Show();
    }

    private void btncreate_Click(object sender, EventArgs e)
    {


        int interest = 0;
        char type = '0';
        double amount = 0 ;
        double balance = 0;

        switch (cboType.SelectedIndex)
        {
            case 0: type = '1'; break;

            case 1: type = '2'; break;

        }
        Saveing account1 = new Saveing(interest, txtName.Text, txtContact.Text,
            txtpinCode.Text, type, amount,balance);

        Data.CSaveing.Add(account1); //SList shows because its static if remove static will not appears
    }

    private void NewAccountForm_Load(object sender, EventArgs e)
    {

    }
}

这是我的登录表单

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    Data Accounts;
    bool validCode = false;

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
    {

        Accounts.name = txtname.Text;
        Accounts.code = txtCode.Text;

        if (string.IsNullOrWhiteSpace(txtname.Text))
        {
            MessageBox.Show("Please Type your full name");
        }
        if (string.IsNullOrWhiteSpace(txtCode.Text))
        {
            MessageBox.Show("Please Enter a correct account Pin Code");
        }
        else if ((Accounts.name == txtname.Text)) ;
        else if ((Accounts.code != txtCode.Text)) ;
        {
            int i;
            progressBar1.Maximum = 100;
            progressBar1.Minimum = 0;
            progressBar1.Step = 1;
            timer1.Start();

            for (i = 0; i <= 50; i++)

                progressBar1.Value = i;

        }
    }

    private void button2_Click(object sender, EventArgs e)
    {
        NewAccountForm naf = new NewAccountForm();
        this.Hide();
        naf.Show();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
        progressBar1.PerformStep();
        if (progressBar1.Value == 99)
        {
            LoginForm login = new LoginForm();
            this.Hide();
            login.Show();
        }
    }

    private void label3_Click(object sender, EventArgs e)
    {

    }

    private void label4_Click(object sender, EventArgs e)
    {

    }
}

1 个答案:

答案 0 :(得分:0)

这个问题缺少很多必要的信息。目前尚不清楚你需要做什么。

但是,如果您需要存储数据但不允许使用数据库,则可以将其放入文本文件中。您甚至可以加密数据以使其更“安全”。

如果您只需要按用户会话保存数据,那么首次运行应用程序时包含您的用户的类是空的并不重要。事实上,它使事情变得更容易,因为第一次运行应用程序时,您知道您的用户类将为空。

我建议你有一个包含List<UserClass> usersList的登录表单。当您的用户单击登录时,首先检查列表是否包含任何条目:

if(usersList.Any()) { ... }

如果列表中没有值,则显示表单以创建新用户。当您在创建用户表单中验证值时,将UserClass的新实例添加到列表中,并显示登录表单,无论可能是什么。

我还建议您阅读有关.NET和C#的许多入门教程之一,因为这可能不是提出这些基本问题的正确位置:)