รบกวนอธิบาย code programe ได้หรือไม่ครับ มันเป็นรูปแบบที่ผมไม่เคยเห็น
ออกตัวก่อนครับว่า ผมไม่ได้เรียนมาด้านการเขียนโปรแกรม อาศัยอ่านเอาจากหนังสือ กับ ดูตัวอย่างโค๊ด ทั้งจากเว็บและหนังสือ แล้วเอามาทดลองเขียน พอดีผมเจอโค๊ดตัวหนึ่ง ดูรูปแบบแล้วยังไงก็ไม่เข้าใจว่าประโยคนี้สั่งให้ทำงานอะไร มีลำดับทำงานอย่างไร
ประโยคคำสั่งเป็นแบบนี้ครับ
ตัวแปร = คำสั่ง != null ? คำสั่ง : "";
เป็น C# Asp.net ครับ รบกวนด้วยครับ
ด้านล่างเป็นโปรแกรมเต็มๆ ครับ
Code
private string insertedValue;
protected void SqlDataSource1_Inserted(object sender, SqlDataSourceStatusEventArgs e)
{
//use e.AffectedRows for ensure success action. The store read this value and set predefined Confirm depend on e.AffectedRows
//The Confirm can be granted or denied in OnRecord....ed event
insertedValue = e.Command.Parameters["@newId"].Value != null
? e.Command.Parameters["@newId"].Value.ToString()
: "";
}
ส่วน @newId มาจาก asp:SqlDataSouce ครับ
Code
<asp:SqlDataSource
ID="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
DeleteCommand="DELETE FROM Suppliers WHERE (SupplierID = @SupplierID)"
InsertCommand="INSERT INTO Suppliers
(CompanyName,
ContactName,
ContactTitle,
Address,
City,
Region,
PostalCode,
Country,
Phone,
Fax)
VALUES
(@CompanyName,
@ContactName,
@ContactTitle,
@Address,
@City,
@Region,
@PostalCode,
@Country,
@Phone,
@Fax);
SELECT @newId = @@Identity;"
SelectCommand="SELECT
SupplierID,
CompanyName,
ContactName,
ContactTitle,
Address,
City,
Region,
PostalCode,
Country,
Phone,
Fax
FROM Suppliers"
UpdateCommand="UPDATE Suppliers SET
CompanyName = @CompanyName,
ContactName = @ContactName,
ContactTitle = @ContactTitle,
Address = @Address,
City = @City,
Region = @Region,
PostalCode = @PostalCode,
Country = @Country,
Phone = @Phone,
Fax = @Fax
WHERE (SupplierID = @SupplierID)"
OnInserted="SqlDataSource1_Inserted">
<DeleteParameters>
<asp:Parameter Name="SupplierID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CompanyName" Type="String" />
<asp:Parameter Name="ContactName" Type="String" />
<asp:Parameter Name="ContactTitle" Type="String" />
<asp:Parameter Name="Address" Type="String" />
<asp:Parameter Name="City" Type="String" />
<asp:Parameter Name="Region" Type="String" />
<asp:Parameter Name="PostalCode" Type="String" />
<asp:Parameter Name="Country" Type="String" />
<asp:Parameter Name="Phone" Type="String" />
<asp:Parameter Name="Fax" Type="String" />
<asp:Parameter Name="SupplierID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="CompanyName" Type="String" />
<asp:Parameter Name="ContactName" Type="String" />
<asp:Parameter Name="ContactTitle" Type="String" />
<asp:Parameter Name="Address" Type="String" />
<asp:Parameter Name="City" Type="String" />
<asp:Parameter Name="Region" Type="String" />
<asp:Parameter Name="PostalCode" Type="String" />
<asp:Parameter Name="Country" Type="String" />
<asp:Parameter Name="Phone" Type="String" />
<asp:Parameter Name="Fax" Type="String" />
<asp:Parameter Direction="Output" Name="newId" Type="Int32" />
</InsertParameters>
</asp:SqlDataSource>
ขอบคุณครับTag : .NET, Web (ASP.NET), C#
ประวัติการแก้ไข 2012-04-03 09:21:27
Date :
2012-04-03 09:17:26
By :
Aod47
View :
945
Reply :
3
จะเป็นประมาณนี้.....มั๊ง
if( e.Command.Parameters["@newId"].Value != null ) {
insertedValue = e.Command.Parameters["@newId"].Value.ToString();
}
else {
insertedValue = "";
}
Date :
2012-04-03 09:45:49
By :
watcharop
ขอบคุณทั้งสองท่านมากครับ
ทำให้เข้าใจมากขึ้นทีเดียว
Date :
2012-04-03 10:05:40
By :
Aod47
Load balance : Server 01