GridView中使用uniqueidentifier类型字段做DataKeyName

        最近做个系统用到MemberShip来做用户权限管理,感觉Membership有点象java的acegi !
        Membership里面有不少关键字段如:UserID,RoleID都是采用uniqueidentifier类型!
于是我在用GridView和DetailsView做一个主-从表结构程序的时候用一个UserID做为主表的
DataKeyName,用ObjectDataSource进行数据绑定,ObjectDataSource调用类UserLib的
GetUserInfo(string UserID)方法做为获取从表的数据源!
        程序跑起来出现一个什么"IConverter"异常!MS的这个报错真实恶心之极!非常不明确!
后来查了一些资料才发现,对于uniqueidentifier类型的字段做DataKeyName,关联参数要
这样写:

                    <SelectParameters>
                        <asp:ControlParameter ControlID="grvUser" Name="UserID" PropertyName="SelectedValue"
                            Type="Object" />
                    </SelectParameters>

       而且原来的GetUserInfo(string UserID)方法要改成GetUserInfo(System.Guid UserID)
       按照以上方式修改后,一切OK!部分原代码如下:

       UserManage.aspx代码:

<%@ Page Language="C#" MasterPageFile="~/Template/NormalTemplate.master" AutoEventWireup="true" CodeFile="UserManage.aspx.cs" Inherits="UserManage_UserManage" Title="学籍管理系统(Ajax版)" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" Runat="Server">

        <TABLE width=500 align=center>
            <TR>
                <TD align="center">
                    <asp:Label style="TEXT-ALIGN: right" id="Label6" runat="server" ForeColor="#0000C0" Font-Bold="True">用户信息管理</asp:Label>
                </TD>
                <TD align="center">
                    <asp:Label style="TEXT-ALIGN: right" id="Label7" runat="server" ForeColor="#0000C0">当前状态:</asp:Label> <asp:Label style="TEXT-ALIGN: right" id="lblEditState" runat="server" ForeColor="#FF8000" Width="73px">新增</asp:Label>
                </TD>
            </TR>
            <TR>
                <TD bgColor=#cccccc colSpan=2 height=1></TD>
            </TR>
            <TR>
                <TD align=center>关键字<asp:TextBox id="txtKey" runat="server" Width="100px" Height="16px" CssClass="input"></asp:TextBox> <asp:Button id="btnSearch" runat="server" Width="50px" CssClass="input" CausesValidation="False" Text="查找"></asp:Button>
                </TD>
                <TD align=center>当前共:<asp:Label id="lblResultCount" runat="server" ForeColor="Red" Text="0"></asp:Label>条记录 是第<asp:Label id="lblCurPage" runat="server" ForeColor="Red" Text="0"></asp:Label>页/一共<asp:Label id="lblPage" runat="server" ForeColor="Red" Text="0"></asp:Label>页&nbsp;
                </TD>
            </TR>
            <TR>
                <TD bgColor="#cccccc" colSpan="2" height="1">
                </TD>
            </TR>
            <TR>
                <TD colSpan=2>
                   <asp:GridView id="grvUser" runat="server" DataSourceID="dsoUser" Width="100%" AllowSorting="True" DataKeyNames="UserID" AutoGenerateColumns="False" AllowPaging="True" GridLines="Vertical" CellPadding="3" BorderWidth="1px" BorderStyle="None" BorderColor="#999999" BackColor="White">
                        <FooterStyle BackColor="#CCCCCC" ForeColor="Black"></FooterStyle>
                        <Columns>
                            <asp:TemplateField HeaderText="用户名">
                                <ItemStyle Width="80px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:LinkButton id="lblUserName" runat="server" Text='<%# Eval("UserName") %>' CommandName="Select"></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>                           
                            <asp:BoundField DataField="RealUserName" HeaderText="姓名">
                                <ItemStyle Width="50px" HorizontalAlign="Center"></ItemStyle>
                            </asp:BoundField>
                            <asp:TemplateField HeaderText="性别">
                                <ItemStyle Width="30px"></ItemStyle>
                                <ItemTemplate>
                                   <asp:Label ID="lblSex" runat="server" Text='<%# BindSexFormat(Eval("Sex")) %>'></asp:Label>                                                  
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:BoundField DataField="SchoolName" HeaderText="所属学校">
                                <ItemStyle Width="100px" HorizontalAlign="Center"></ItemStyle>
                            </asp:BoundField>                           
                            <asp:TemplateField HeaderText="上次登录">
                                <ItemTemplate>
                                   <asp:Label ID="lblLastActivityDate" runat="server" Text='<%# BindDateFormat(Eval("LastActivityDate")) %>'></asp:Label>                                                  
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="状态">
                                <ItemStyle Width="30px"></ItemStyle>
                                <ItemTemplate>
                                   <asp:Label ID="lblState" runat="server" Text='<%# BindStateFormat(Eval("IsApproved")) %>'></asp:Label>                                                  
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                        <RowStyle BackColor="#EEEEEE" ForeColor="Black"></RowStyle>
                        <SelectedRowStyle BackColor="#FFE0C0" BorderStyle="Solid" ForeColor="White" BorderColor="#8080FF" Font-Bold="True"></SelectedRowStyle>
                        <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center"></PagerStyle>
                        <HeaderStyle BackColor="#000084" ForeColor="White" Font-Bold="True"></HeaderStyle>
                        <AlternatingRowStyle BackColor="Gainsboro"></AlternatingRowStyle>
                     </asp:GridView>
                  </TD>
               </TR>
               <TR>
                  <TD width="45%">
                    <asp:Label style="TEXT-ALIGN: right" id="lblDetailView" runat="server" ForeColor="#0000C0" Font-Bold="True">详细考试信息</asp:Label>
                  </TD>
                  <TD>
                    <asp:Button id="btnNew" runat="server" Width="50px" CssClass="input" CausesValidation="False" Text="新增"></asp:Button>
                    <asp:Button id="btnUpdate" runat="server" Width="50px" CssClass="input" Text="修改" Visible="False"></asp:Button>
                    <asp:Button id="btnDelete" runat="server" Width="50px" CssClass="input" Text="删除" Visible="False" OnClientClick="return confirm('是否确认删除当前记录?');"></asp:Button>
                    <asp:Button id="btnSave" runat="server" Width="50px" CssClass="input" Text="保存" Visible="False"></asp:Button>
                    <asp:Button id="btnCancel" runat="server" Width="50px" CssClass="input" CausesValidation="False" Text="取消"></asp:Button>
                  </TD>
               </TR>
               <TR>
                  <TD colSpan="2">
                     <asp:DetailsView id="dtvUserInfo" runat="server" DataSourceID="dsoUserDetail" ForeColor="#333333" Width="100%" Height="50px" GridLines="None" CellPadding="4" AutoGenerateRows="False">
                        <FooterStyle BackColor="#507CD1" ForeColor="White" Font-Bold="True"></FooterStyle>
                        <CommandRowStyle BackColor="#D1DDF1" Font-Bold="True"></CommandRowStyle>
                        <EditRowStyle BackColor="White" BorderColor="#E0E0E0"></EditRowStyle>
                        <RowStyle BackColor="#EFF3FB"></RowStyle>
                        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center"></PagerStyle>
                        <Fields>
                            <asp:TemplateField HeaderText="ID">
                                <EditItemTemplate>
                                    <asp:Label ID="lblUserID" runat="server" Text='<%# Bind("UserID") %>'></asp:Label>                          
                                </EditItemTemplate>
                                <InsertItemTemplate>       
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label ID="lblUserID" runat="server" Text='<%# Bind("UserID") %>'></asp:Label>                        
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="用户名">
                                <EditItemTemplate>
                                    <asp:TextBox id="txtUserName_E" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("UserName") %>' MaxLength="50"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqUserName_E" runat="server" ErrorMessage="用户名用于登录不能为空!" Display="None" ControlToValidate="txtUserName_E" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexUserName_E" runat="server" ErrorMessage="用户名称录入不能带'-#//%$字符!考试名称录入不能带'-#//%$字符!长度(2~30)" Display="None" ControlToValidate="txtUserName_E" ValidationExpression="[^#/-'$%]{2,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtUserName" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("UserName") %>' MaxLength="50"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqUserName" runat="server" ErrorMessage="用户名用于登录不能为空!" Display="None" ControlToValidate="txtUserName" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexUserName" runat="server" ErrorMessage="用户名称录入不能带'-#//%$字符!长度(2~30)" Display="None" ControlToValidate="txtUserName" ValidationExpression="[^#/-'$%]{2,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label id="lblUserName" runat="server" Text='<%# Eval("UserName") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="密码">
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtPassword" runat="server" TextMode="Password" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("Password") %>' MaxLength="20"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqPassword" runat="server" ErrorMessage="密码用于登录不能为空!" Display="None" ControlToValidate="txtPassword" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexPassword" runat="server" ErrorMessage="密码录入不能带'-#//%$字符!长度(7~20)" Display="None" ControlToValidate="txtPassword" ValidationExpression="[^#/-'$%]{7,20}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>                                   
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="密码确认">
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtPasswordConfirm" runat="server" TextMode="Password" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("PasswordConfirm") %>' MaxLength="20"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqPasswordConfirm" runat="server" ErrorMessage="密码确认不能为空!" Display="None" ControlToValidate="txtPasswordConfirm" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexPasswordConfirm" runat="server" ErrorMessage="密码确认不能带'-#//%$字符!长度(7~20)" Display="None" ControlToValidate="txtPasswordConfirm" ValidationExpression="[^#/-'$%]{7,20}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>                                   
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="真实姓名">
                                <EditItemTemplate>
                                    <asp:TextBox id="txtRealUserName_E" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("RealUserName") %>' MaxLength="50"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqRealUserName_E" runat="server" ErrorMessage="真实姓名不能为空!" Display="None" ControlToValidate="txtRealUserName_E" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexRealUserName_E" runat="server" ErrorMessage="真实姓名录入不能带'-#//%$字符!真实姓名录入不能带'-#//%$字符!长度(2~30)" Display="None" ControlToValidate="txtRealUserName_E" ValidationExpression="[^#/-'$%]{2,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtRealUserName" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("RealUserName") %>' MaxLength="50"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqRealUserName" runat="server" ErrorMessage="真实姓名不能为空!" Display="None" ControlToValidate="txtRealUserName" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexRealUserName" runat="server" ErrorMessage="真实姓名录入不能带'-#//%$字符!长度(2~30)" Display="None" ControlToValidate="txtRealUserName" ValidationExpression="[^#/-'$%]{2,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label id="lblRealUserName" runat="server" Text='<%# Eval("RealUserName") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="性别">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="cmbSex_E" runat="server" Height="16px" CssClass="input" SelectedValue='<%# Bind("Sex") %>' Width="100px" DataValueField="Sex">
                                        <asp:ListItem Text="男" Value="1"></asp:ListItem> 
                                        <asp:ListItem Text="女" Value="0"></asp:ListItem>
                                    </asp:DropDownList>                              
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList ID="cmbSex" runat="server" CssClass="input" Height="16px"    Width="100px" DataValueField="Sex" SelectedValue='<%# Bind("Sex") %>'>
                                        <asp:ListItem Text="男" Value="1"></asp:ListItem> 
                                        <asp:ListItem Text="女" Value="0"></asp:ListItem>
                                    </asp:DropDownList>                          
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label ID="lblSex" runat="server" Text='<%# Bind("Sex") %>'></asp:Label>                                   
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="所属角色">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="cmbRoleID_E" runat="server" Height="16px" CssClass="input" SelectedValue='<%# Bind("RoleID") %>' Width="100px" DataSourceID="sdcRole" DataTextField="RoleName" DataValueField="ID">
                                </asp:DropDownList>                              
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList ID="cmbRoleID" runat="server" CssClass="input" Height="16px"    Width="100px" DataSourceID="sdcRole" DataTextField="RoleName" DataValueField="ID" SelectedValue='<%# Bind("RoleID") %>'>
                                </asp:DropDownList>                          
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>                                   
                                    <asp:Label ID="lblRoleName" runat="server" Text='<%# Bind("RoleName") %>'></asp:Label>                          
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="所属学校">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="cmbSchoolID_E" runat="server" Height="16px" CssClass="input" SelectedValue='<%# Bind("SchoolID") %>' Width="100px" DataSourceID="sdcRole" DataTextField="SchoolName" DataValueField="ID">
                                </asp:DropDownList>                              
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList ID="cmbSchoolID" runat="server" CssClass="input" Height="16px"    Width="100px" DataSourceID="sdcRole" DataTextField="SchoolName" DataValueField="ID" SelectedValue='<%# Bind("SchoolID") %>'>
                                </asp:DropDownList>                          
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>                                   
                                    <asp:Label ID="lblSchoolName" runat="server" Text='<%# Bind("SchoolName") %>'></asp:Label>                          
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="电子邮件">
                                <EditItemTemplate>
                                    <asp:TextBox id="txtEmail_E" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("Email") %>' MaxLength="100"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqEmail_E" runat="server" ErrorMessage="电子邮件录入不能为空!" Display="None" ControlToValidate="txtEmail_E" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexEmail_E" runat="server" ErrorMessage="电子邮件录入格式不正确!邮件录入长度(<100)" Display="None" ControlToValidate="txtEmail_E" ValidationExpression="/w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtEmail" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("Email") %>' MaxLength="100"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqEmail" runat="server" ErrorMessage="电子邮件录入不能为空!" Display="None" ControlToValidate="txtEmail" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexEmail" runat="server" ErrorMessage="电子邮件录入格式不正确!邮件录入长度(<100)" Display="None" ControlToValidate="txtEmail" ValidationExpression="/w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label id="lblEmail" runat="server" Text='<%# Eval("Email") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="找回密码问题">
                                <EditItemTemplate>
                                    <asp:TextBox id="txtQuestion_E" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("PasswordQuestion") %>' MaxLength="30"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqQuestion_E" runat="server" ErrorMessage="找回密码问题不能为空!" Display="None" ControlToValidate="txtQuestion_E" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexQuestion_E" runat="server" ErrorMessage="找回密码问题不能带'-#//%$字符!长度(4~30)" Display="None" ControlToValidate="txtQuestion_E" ValidationExpression="[^#/-'$%]{4,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtQuestion" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("PasswordQuestion") %>' MaxLength="30"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqQuestion" runat="server" ErrorMessage="找回密码问题不能为空!" Display="None" ControlToValidate="txtQuestion" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexQuestion" runat="server" ErrorMessage="找回密码问题不能带'-#//%$字符!长度(4~30)" Display="None" ControlToValidate="txtQuestion" ValidationExpression="[^#/-'$%]{4,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label id="lblQuestion" runat="server" Text='<%# Eval("PasswordQuestion") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="问题答案">
                                <EditItemTemplate>
                                    <asp:TextBox id="txtAnswer_E" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("PasswordAnswer") %>' MaxLength="30"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqAnswer_E" runat="server" ErrorMessage="问题答案不能为空!" Display="None" ControlToValidate="txtAnswer_E" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexAnswer_E" runat="server" ErrorMessage="问题答案不能带'-#//%$字符!长度(4~30)" Display="None" ControlToValidate="txtAnswer_E" ValidationExpression="[^#/-'$%]{4,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:TextBox id="txtAnswer" runat="server" Width="100px" Height="16px" CssClass="input" Text='<%# Bind("PasswordAnswer") %>' MaxLength="30"></asp:TextBox>
                                    <asp:RequiredFieldValidator id="reqAnswer" runat="server" ErrorMessage="问题答案不能为空!" Display="None" ControlToValidate="txtAnswer" SetFocusOnError="True"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator id="rexAnswer" runat="server" ErrorMessage="问题答案不能带'-#//%$字符!长度(4~30)" Display="None" ControlToValidate="txtAnswer" ValidationExpression="[^#/-'$%]{4,30}" SetFocusOnError="True"></asp:RegularExpressionValidator>
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label id="lblAnswer" runat="server" Text='<%# Eval("PasswordAnswer") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="记录创建时间">
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label ID="lblCreateDate" runat="server" Text='<%# Eval("CreateDate") %>'></asp:Label>                          
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="状态">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="cmbIsApproved_E" runat="server" Height="16px" CssClass="input" SelectedValue='<%# Bind("IsApproved") %>' Width="100px" DataValueField="IsApproved">
                                        <asp:ListItem Text="启用" Value="True"></asp:ListItem> 
                                        <asp:ListItem Text="停用" Value="False"></asp:ListItem>
                                    </asp:DropDownList>                              
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList ID="cmbIsApproved" runat="server" CssClass="input" Height="16px"    Width="100px" DataValueField="IsApproved" SelectedValue='<%# Bind("IsApproved") %>'>
                                        <asp:ListItem Text="启用" Value="True"></asp:ListItem> 
                                        <asp:ListItem Text="停用" Value="False"></asp:ListItem>
                                    </asp:DropDownList>                          
                                </InsertItemTemplate>
                                <ItemStyle Width="380px"></ItemStyle>
                                <ItemTemplate>
                                    <asp:Label ID="lblIsApproved" runat="server" Text='<%# BindStateFormat(Eval("IsApproved")) %>'></asp:Label>                                   
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Fields>
                        <FieldHeaderStyle BackColor="#DEE8F5" Font-Bold="True"></FieldHeaderStyle>
                        <HeaderStyle BackColor="#507CD1" ForeColor="White" Font-Bold="True"></HeaderStyle>
                        <AlternatingRowStyle BackColor="White"></AlternatingRowStyle>
                     </asp:DetailsView>
                        <asp:ValidationSummary id="ValidationSummary1" runat="server" ShowSummary="False" ShowMessageBox="True"></asp:ValidationSummary>
                     </TD>
                  </TR>
               </TABLE>
               <asp:ObjectDataSource id="dsoUser" runat="server" SelectMethod="GetUserList" TypeName="UserLib">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="txtKey" DefaultValue="" Name="strKey" PropertyName="Text" Type="String" />
                    </SelectParameters>
                </asp:ObjectDataSource>
                <asp:SqlDataSource id="sdcRole" runat="server" SelectCommand="Select * From T_School_Grade Order by ID Asc" ProviderName="<%$ ConnectionStrings:MyConn.ProviderName %>" ConnectionString="<%$ ConnectionStrings:MyConn %>"></asp:SqlDataSource>
                <asp:SqlDataSource id="sdcSchool" runat="server" SelectCommand="Select * From T_Subject_Master Order by ID Asc" ProviderName="<%$ ConnectionStrings:MyConn.ProviderName %>" ConnectionString="<%$ ConnectionStrings:MyConn %>"></asp:SqlDataSource>
                <asp:ObjectDataSource id="dsoUserDetail" runat="server" SelectMethod="GetUserInfo" TypeName="UserLib" OnSelecting="dsoUserDetail_Selecting">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="grvUser" Name="UserID" PropertyName="SelectedValue"
                            Type="Object" />
                    </SelectParameters>
                </asp:ObjectDataSource>

</asp:Content>

UserLib类函数:GetUserInfo

/// <summary>
    /// 根据关键字UserID获取指定ID的用户信息
    /// </summary>
    /// <param name="UserID"></param>
    /// <returns></returns>
    public DataSet GetUserInfo(System.Guid UserID)
    {
        try
        {
            string strSQL = "Select A.*,B.Email,B.CreateDate,B.IsApproved,B.PasswordQuestion,B.PasswordAnswer,C.Sex,C.RealUserName,D.SchoolName,F.RoleName,F.RoleID From Aspnet_Users A,Aspnet_MemberShip B,T_School_User C,T_School_Master D,Aspnet_UsersInRoles E,Aspnet_Roles F " +
                            " Where A.UserID=B.UserID And C.UserID=A.UserID And C.SchoolID=D.ID And E.UserID=A.UserID And F.RoleID=E.RoleID And A.UserID='" + UserID.ToString() + "'";

            return comDBAccess.SelectSQL(strSQL);
        }
        catch
        {
            return null;
        }
    }

      

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值