0
 <asp:Parameter Name="Creator_Id" Type="Int32"  DefaultValue="<%=currentEmployeeId() %>"/>

また

INSERT INTO [PromotionSet] ([StartDate], [EndDate], [Bonus], [Text], [InfoImage], [RequiresPreregistration], [Code], [Creator_Id]) VALUES (@StartDate, @EndDate, @Bonus, @Text, @InfoImage, @RequiresPreregistration, @Code,<%=currentEmployeeId() %>"

同じことを達成する上記の手段はどちらも機能しません。currentEmployeeId は、現在ログインしているユーザーの ID を返します。currentEmployeeId が単に「1」を返すように設定されている場合 (「1」を返す)。それはまだ機能しません。しかし、 <%=currentEmployeeId() %> を 1 に置き換えると機能します。

このシナリオではインライン コードは機能しませんか? どうすればこれを達成できますか?

オブジェクト データ ソースは論外です。insert update メソッドと delete メソッドを自分で書く時間がありません (これが SQLDataSource を使用する理由です)。

どうもありがとう

4

1 に答える 1

0

あなたはコードビハインドからそれを行うことができます

protected void Page_Load(object sender, EventArgs e)
{
     mySqlDataSourece.SelectParameters["Creator_Id"].DefaultValue = currentEmployeeId();

}
于 2012-09-26T21:20:28.877 に答える