2

私はまだasp.netを初めて使用し、理解できない問題を抱えています。私はvbと.netメンバーシップAPIを使用しています。

私の質問は、現在のユーザーのユーザーIDをDetailsView INSERTに取り込むにはどうすればよいですか?

<InsertParameters>
<asp:Parameter Name="UserID"/>
</InsertParameters>
4

3 に答える 3

5

あなたのOnInsertingイベントでは、クラスのプロパティを使用してメンバーシップ テーブルからSqlDataSource取得できます。次に、この値をプログラムで UserID 挿入パラメーターに割り当てることができます。UserIDProviderUserKeyMembershipUser

protected void SqlDataSource_Inserting(object sender, SqlDataSourceCommandEventArgs e) 
{      
    MembershipUser currentUser = Membership.GetUser();      
    Guid id = (Guid)currentUser.ProviderUserKey;
    e.Command.Parameters["@UserID"].Value = id; 
}
于 2009-12-05T23:40:17.137 に答える
0

User.Identity.Name は一意のユーザー名を取得します。ID は aspnet_Users テーブルで確認できます。

于 2009-12-05T22:54:05.173 に答える
0

次のように 1 行で実行します。

protected void Sql_OnInserting(object sender, SqlDataSourceCommandEventArgs e)
{
    e.Command.Parameters["@UserId"].Value = Membership.GetUser(HttpContext.Current.User.Identity.Name).ProviderUserKey;
}
于 2012-12-31T07:59:44.633 に答える