如何处理在ASP中的另一个对象中实例化的对象.NET web表单
本文关键字:实例化 一个对象 对象 NET 表单 web 何处理 处理 ASP | 更新日期: 2023-09-27 17:50:29
这可能是一个非常简单的问题,但是当涉及到从包含类型为另一个类的字段的类创建的对象时,我有点困惑。让我感到困惑的部分是如何用web表单中的数据填充字段。
例如,如果我有一个customer
类,它有一个名为contact
的字段,它的类型是Contact
,在web表单级别填充它的正确方法是什么?目前我是这样做的,想知道这是否正确。
这是我的customer
类的代码,contact
是另一个类。
public class Customer
{
private string firstName;
private string lastName'
private string notes;
private Contact contact;
public Customer()
{
this.contact = new Contact();
}
public string FirstName
{
get { return firstName; }
set { firstName = value; }
}
public string LastName
{
get { return lastName; }
set { lastName = value; }
}
public string Notes
{
get { return notes; }
set { notes = value; }
}
public Contact Contact
{
get { return contact; }
set { contact = value; }
}
}
来自我的表单的代码
private Customer customer;
public WebFormSample()
{
customer = new AddressBook.Customer();
}
protected void addButton_Click(object sender, EventArgs e)
{
customer.FirstName = firstName.Text;
customer.LastName = lastName.Text;
customer.Contact.Phone = phone.Text;
customer.Contact.Email = Email.Text;
}
这是我应该与contact
对象工作的方式,还是我应该在web表单上实例化contact
对象,填充它,然后将其分配给customer
对象中的联系人,或者我完全错了,这应该以完全不同的方式完成?
希望这有意义。
谢谢
你试过你发布的代码了吗?因为我希望customer.Contact
是null
,因为你从来没有为它创建一个实例。
所以你可以像这样修改你现有的代码:
customer.Contact = new Contact();
customer.Contact.Phone = phone.Text;
customer.Contact.Email = Email.Text;
或者你也可以按你问的做:
var contact = new Contact();
contact.Phone = phone.Text;
contact.Email = Email.Text;
customer.Contact = contact;
可能是这样的:-
Customer.Contact = new Contact { Phone = phone.Text
, Email = Email.text };
Customer类不应该负责创建Contact类,它应该从外部(通过构造函数或公共属性)获取Contact实例。