0
これは簡単ですが、間違っていることはわかりません。誰でも問題を見つけることができますか?削除はグリッドビューでは機能しません。 deleteイベントは発生しますが、データは取得されません。ここにコードがあります。グリッドビューのイベントを削除しないイベントを削除します。
<asp:ObjectDataSource ID="odsAdministratiors" runat="server"
DeleteMethod="RemoveUsersFromRoles" InsertMethod="AddUserToRolesGroup"
OldValuesParameterFormatString="{0}" SelectMethod="GetAdmins"
TypeName="ManageAdminRoles" UpdateMethod="AddUserToRolesGroup" >
<DeleteParameters>
<asp:Parameter Name="firstname" Type="String" />
<asp:Parameter Name="lastname" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="altemail" Type="String" />
<asp:Parameter Name="UserId" DbType="Guid" />
<asp:Parameter Name="RoleId" DbType="Guid" />
<asp:Parameter Name="RoleName" Type="String" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="firstname" Type="String" />
<asp:Parameter Name="lastname" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="altemail" Type="String" />
<asp:Parameter Name="UserId" DbType="Guid" />
<asp:Parameter Name="RoleId" DbType="Guid" />
<asp:Parameter Name="RoleName" Type="String" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="firstname" Type="String" />
<asp:Parameter Name="lastname" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="altemail" Type="String" />
<asp:Parameter DbType="Guid" Name="UserId" />
<asp:Parameter DbType="Guid" Name="RoleId" />
<asp:Parameter Name="RoleName" Type="String" />
</UpdateParameters>
</asp:ObjectDataSource>
そしてBLL方法:あなたのHELLPため
private Get_Site_Admins_TableAdapter _Adapter = null;
protected Get_Site_Admins_TableAdapter Adapter
{
get
{
if (_Adapter == null)
_Adapter = new Get_Site_Admins_TableAdapter();
return _Adapter;
}
}
[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, true)]
public dsManageAdminRoles.Get_Site_AdminsDataTable GetAdmins()
{
try
{
return Adapter.GetAdminUsers();
}
catch (Exception ex) { throw ex; }
}
[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, true)]
public bool RemoveUsersFromRoles(string firstname,string lastname,string Email,string altemail,Guid UserId,Guid RoleId,string RoleName)
{
int rowsAffected = Adapter.Delete(firstname,lastname,Email,altemail,UserId,RoleId,RoleName);
try
{
return rowsAffected == 1;
}
catch (Exception ex) { throw ex; }
}
[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, true)]
public bool AddUserToRolesGroup(string firstname, string lastname, string Email, string altemail, Guid UserId, Guid RoleId, string RoleName)
{
int rowsAffected = Adapter.Insert(firstname, lastname, Email, altemail, UserId, RoleId, RoleName);
try
{
return rowsAffected == 1;
}
catch (Exception ex) { throw ex; }
}
おかげでここ
<asp:GridView ID="gvAdmins" runat="server" DataKeyField="UserId" Width="200px" DataSourceID="odsAdministratiors"
AutoGenerateColumns="false" AllowPaging="true" AllowSorting="true" PageSize="5" GridLines="None"
CellPadding="2" RowStyle-CssClass="gridview" AlternatingRowStyle-CssClass="altbgcolor"
OnRowDeleting="gvAdmins_OnDeleting" >
<Columns>
<asp:BoundField DataField="UserId" HeaderText="UserId" ReadOnly="True" Visible="false" />
<asp:BoundField DataField="RoleId" HeaderText="RoleId" ReadOnly="True" Visible="false" />
<asp:BoundField DataField="Email" HeaderText="Email" ReadOnly="True" Visible="false" />
<asp:BoundField DataField="altemail" HeaderText="altemail" ReadOnly="True" Visible="false" />
<asp:TemplateField >
<ItemTemplate>
<asp:Label ID="lblFnane" runat="server" Text='<%# Bind("firstname") %>' />
<asp:Label ID="lblLname" runat="server" Text='<%# Bind("lastname")%>' />
</ItemTemplate>
<AlternatingItemTemplate>
<asp:Label ID="lblFnane" runat="server" Text='<%# Bind("firstname") %>' />
<asp:Label ID="lblLname" runat="server" Text='<%# Bind("lastname")%>' />
</AlternatingItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowDeleteButton="true" />
</Columns>
</asp:GridView>
はODSです。飛び出している
Risho
あなたがデータソースに削除イベントを追加し、deleteparametersが何であるかを見ることができますか? –
@Paul:削除イベントメソッドはRemoveUsersFromRolesと呼ばれます。デバッグモードでは起動しますが、変数はnullです。 – Risho
私も訂正をしましたが、 ".Update"と書かれていましたが、Deleteに修正されました:[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Delete、true)] – Risho