【发布时间】:2013-11-26 15:51:07
【问题描述】:
今天我记录了这样一个请求。
我在一个类中定义了五个地址参数,但五个地址可能为空或有值。
五个地址在数据库中存储一个字段,像这样(email1;email2;....)
当存储数据库时,我需要在页面中获取五个文本框来填充地址添加“:”,这样就可以了。
那么问题是,当我从数据库中获取数据并在页面的五个文本框中显示值时。
如果地址有值,则显示带有五个文本框的页面。没有数据,显示为空。
那么,如何将动态邮件列表解析为五个文本框。
string [] emailList = sourceEmail.split(‘;’);
foreach(string email in emailList)
{
this.email0 =?
this.email1=?
this.email2=?
.......
}
我知道这行不通,因为我们不知道 emailList 有多少价值。
我知道一种方法可以工作,但似乎不太好。
string [] emailList =sourceEmail.Split(';');
if(emailList.length ==1)
{
this.email0 = emailList[0];
}
if(emailList.length==2)
{
this.email0 = emailList[0];
this.email1 = emailList[1];
}
if(emailList.length==3)
{
this.email0 = emailList[0];
this.email1 = emailList[1];
this.email2 = emailList[2];
}
我认为这不是一个好方法。 有人可以帮我吗?
【问题讨论】:
-
只需检查
emailList.Length并采取相应措施... -
哦,顺便说一句,
five address store one field in Database ,like this (email1;email2;....)这是你不应该做的。阅读数据库规范化。 -
哈哈,我做的是增强项目,不是新项目,客户要求,我们尽量不要修改数据库结构。如果修改数据库结构。那么有很多工作要做。
-
同意@Leri,考虑将电子邮件存储在单独的表中,并使用 FK 约束根据您正在处理的任何实体获取它们
-
@chengdu.jack 好吧,你必须选择现在做很少的工作并最终得到需要完全重写的垃圾,或者做更多的工作并使项目可维护。 :)