|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
据说很厉害,甚至可以把C#也干掉^_^,不过也很复杂,本来C++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。asp.net|数据完成效果:在主内外选中某行,从内外得出该行的概况。
办法1:代码完成。
在页面上放一个GridView,一个DetailView。数据绑定GridView而且要设置主键,然后在SelectedIndexChanged事务写代码:选择产生变更时,DetailView也改动为响应的Detail。
详细代码:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
publicpartialclassMasterDetail2:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!Page.IsPostBack)
{
stringSQL="SELECT*FROM[Orders]";
GridView1.DataSource=Binding(SQL);
GridView1.DataKeyNames=newstring[]{"OrderID"};
GridView1.DataBind();
}
}
protectedvoidGridView1_SelectedIndexChanged(objectsender,EventArgse)
{
stringOrderID=Convert.ToString(GridView1.SelectedValue);
stringSQL="SELECT*FROM[OrderDetails]WHERE[OrderID]="+OrderID+"";
DetailsView1.DataSource=Binding(SQL);
DetailsView1.DataBind();
}
/**////<summary>
///实行SQL语句前往一个数据表
///</summary>
///<paramname="SQL">所要实行的SQL语句</param>
///<returns>DataTable</returns>
protectedDataTableBinding(stringSQL)
{
SqlConnectionmyConn=newSqlConnection(ConfigurationManager.ConnectionStrings["AppConnectionString1"].ConnectionString);
DataTabledt=newDataTable();
SqlDataAdaptermyAdapter=newSqlDataAdapter(SQL,myConn);
myAdapter.Fill(dt);
returndt;
}
}
办法2:设置控件属性完成
在页面上放一个GridView,一个DetailView,然后每一个对应一个数据源。只需在DetailView的数据源的SelectCommand里利用GridView的SelectedValue作为参数,便可完成。
<SelectParameters>
<asp:ControlParameterControlID="EmployeesGridView"Name="AddressID"PropertyName="SelectedValue"
Type="Int32"/>
</SelectParameters>
两种办法都很复杂,办法2基础无代码完成,办法1把持更天真。
我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。 |
|