我使用亚音速生成器来创建一些aspx页面,它工作正常。 在某些页面上,它会自动生成外键值的下拉框。 如何在负载中更改该值会丢弃代码?或者我需要改变的地方。
例如,我有一个工人桌和一个工人周表。 workers表有一个workerid,firstname和lastname字段,workersweek有一个workerID字段。 生成器自动将其设置为显示下拉列表中的名字。我想将值更改为firstname和lastname。
我确信我必须添加类似firstname +“”+ Lastname。
的代码我只是不确定在生成的代码中用它做什么。我看到负载下降子,但似乎不是我需要修改的那个。
答案 0 :(得分:0)
如果从外键加载,则从数据库表加载。
如果需要在查询中连接字段,请尝试使用连接的字段创建视图。例如从表
中选择fName +''+ lName作为FullName然后在aspx页面的代码中,从视图中选择加载组合框。
答案 1 :(得分:0)
或者尝试使用“部分”类功能来创建新的可绑定属性。这对我来说是一种享受,并且在我的应用程序中具有一致的数据呈现的额外好处(额外的好处是不需要更改数据库中的任何内容 - 如果你有来自地狱的DBA,需要18级别的变更控制,这会很有帮助完成任何事情。)
因此,如果您的表类文件是“workers.cs”并且包含一个名为“workers.cs”的类,那么只需创建另一个名为“workers_custom.cs”的类文件(使用您自己的约定来处理部分类)部分类的其余部分,在这种情况下类似于:
using System;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.Common;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Xml;
using System.Xml.Serialization;
using SubSonic;
using SubSonic.Utilities;
namespace YOURCOMPANY.YOURSYSTEM.YOURDAL {
public partial class Workers {
[Bindable(true)]
public string displayWorkersName {
get {
try {
return this.fName + ", " + this.lName;
} catch {
//Your own error handling here
return IsNew ? "##New##" : "##Undefined##";
}
}
}
}
}
(注意,您需要将控件的绑定属性成员更改为新属性 - 在这种情况下:“displayWorksName”)