“有吗?”;记录“;在C#中?
我希望在内存中存储一些客户数据,我认为最好的方法是使用一组记录。我不确定这是否是C#中的名称,但基本上我可以调用“有吗?”;记录“;在C#中?,c#,.net,visual-studio-2012,record,C#,.net,Visual Studio 2012,Record,我希望在内存中存储一些客户数据,我认为最好的方法是使用一组记录。我不确定这是否是C#中的名称,但基本上我可以调用Customer(I).Name,并将客户名称作为字符串返回。在图灵,它是这样做的: type customers : record ID : string Name, Address, Phone, Cell, Email : string //Etc... end record public class Custom
Customer(I).Name
,并将客户名称作为字符串返回。在图灵,它是这样做的:
type customers :
record
ID : string
Name, Address, Phone, Cell, Email : string
//Etc...
end record
public class Customer
{
public string ID { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Phone { get; set; }
public string Cell { get; set; }
public string Email { get; set; }
}
我已经搜索过了,但似乎找不到C的等价物。有人能给我指出正确的方向吗
谢谢!:) 看起来您要查找的“类型”实际上是一个类
class Customer {
string id, name, phone, cell, email;
}
List<Customer> customerList = new List<Customer>();
class客户{
字符串id、姓名、电话、手机、电子邮件;
}
List customerList=新列表();
有关类的更多详细信息,请查看此链接。。。您可能需要做一些研究、阅读和学习:-)
假设您有一个为客户建模的类,您只需使用客户列表即可
var c = new List<Customers>()
string name = c[i].Name
var c=新列表()
string name=c[i].name
好的,这将在C#中的类中定义,所以它可能看起来像这样:
type customers :
record
ID : string
Name, Address, Phone, Cell, Email : string
//Etc...
end record
public class Customer
{
public string ID { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Phone { get; set; }
public string Cell { get; set; }
public string Email { get; set; }
}
然后你可以有一个列表
:
var customers = new List<Customer>();
customers.Add(new Customer
{
ID = "Some value",
Name = "Some value",
...
});
更新:如所述,F#中的类提供门外的字段级相等,而不是引用相等。这是一个非常重要的区别。要在C#中获得相同的相等操作,您需要将这个类
astruct
,然后生成相等所需的运算符;这个问题的答案是一个很好的例子。这里可以使用类或结构
class Customer
{
string Name
{
get;
set;
}
string Email
{
get;
set;
}
}
Customer[] customers = new Customer[50];
//after initializing the array elements, you could do
//assuming a for loop with i as index
Customer currentCustomer = customers[i];
currentCustomer.Name = "This";
创建一个新类来存储这些字段。NET有数组和许多类型的集合。Search MSDN array and collection.2020 update:C#现在有记录类型。name
对于客户来说是一个非常奇怪的名称:)var name=customers[i]代码>看起来很奇怪,不是吗<代码>var客户=客户[i]
会很好。@SriramSakthivel,是的,我想通过访问Name
属性来结束这句话,就像问题中的OP一样。我后来明白了你的意思,并编辑了我的答案。@user2856410应该注意,虽然该类是公共的,但您可能希望将客户列表从一个表单传递到另一个表单。否则,您必须在每个表单上创建一个新列表并重新填充它。customer类只是存储所有客户信息的“模板”,列表实际上包含了数据中的肉类和蔬菜。@psibernetic:这是一个非常好的添加!我会为以后的阅读更新。