1

登録されているすべてのユーザーとその情報の一部を表示する GridView があり、横の「選択」リンクを選択すると、そのユーザーに関連するすべての詳細を含む DetailsView が表示されます。選択は正常に機能し、選択したユーザーの詳細ビューを更新します。DetailsView を編集しようとすると、データベースが更新され、フィールドを変更するときにすべてのユーザーに対して更新された情報が入力されます (たとえば、顧客を変更した場合)ファーストネーム、登録された全員がその名前を取得します)。SqlDataSource の aspx コードは次のとおりです。

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:ApplicationServices %>" OldValuesParameterFormatString="original_{0}" 
        SelectCommand="SELECT * FROM [UserProfile] ORDER BY [Email], [LastName], [Company]"
        UpdateCommand="UPDATE [UserProfile] SET [LastName] = @LastName, [PartsList] = @PartsList, [UserName] = @UserName, [Question] = @Question, 
                      [Answer] = @Answer, [Role] = @Role 
                      WHERE [FirstName] = FirstName AND [Company] = Company">
            <UpdateParameters>
                <asp:Parameter Name="FirstName" Type="String" />
                <asp:Parameter Name="LastName" Type="String" />
                <asp:Parameter Name="Company" Type="String" />
                <asp:Parameter Name="PartsList" Type="String" />
                <asp:Parameter Name="UserName" Type="String" />
                <asp:Parameter Name="Password" Type="String" />
                <asp:Parameter Name="Email" Type="String" />
                <asp:Parameter Name="Question" Type="String" />
                <asp:Parameter Name="Answer" Type="String" />
                <asp:Parameter Name="Role" Type="String" />                    
            </UpdateParameters>
    </asp:SqlDataSource>
4

1 に答える 1