首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

asp.net类(.vb)中sql语句及.aspx中怎么获取值的有关问题

2012-03-11 
asp.net类(.vb)中sql语句及.aspx中如何获取值的问题#################begin:类文件Magazine.vb###########

asp.net类(.vb)中sql语句及.aspx中如何获取值的问题
#################   begin:   类文件Magazine.vb     ##########################

Imports   Microsoft.VisualBasic
Imports   System.Data.SqlClient

Public   Class   Magazine
    Private   _MagazineID   As   Nullable(Of   Integer)   =   Nothing
    Private   _M_No   As   String
    Private   _Prol_Title   As   String

#Region   "Database   fields   as   properties "
    Public   ReadOnly   Property   EmployeeID()   As   Nullable(Of   Integer)
        Get
            Return   _MagazineID
        End   Get
    End   Property

    Public   Property   M_N0()   As   String
        Get
            Return   _M_No
        End   Get
        Set(ByVal   value   As   String)
            _M_No   =   value
        End   Set
    End   Property

    Public   Property   Prol_Title()   As   String
        Get
            Return   _Prol_Title
        End   Get
        Set(ByVal   value   As   String)
            _Prol_Title   =   value
        End   Set
    End   Property
#End   Region

    Private   Const   conn   As   String   =   "server=localhost;database=cla; "   &   _
                                "User   ID=sa;password=password; "

    Public   Shared   Function   SelectMagazine(ByVal   MagazineID   As   Integer)   As   Magazine
        Const   sql   As   String   =   "select   top   1   MagazineID,   M_No,   prol_title   "   &   _
                                                "from   magazine   where   MagazineID={0} "
        Dim   result   As   Magazine   =   Nothing
        Try
            'Open   connection
            Using   cn   As   New   SqlConnection(conn)
                Using   cmd   As   New   SqlCommand(String.Format(sql,   MagazineID.ToString),   cn)
                    cn.Open()
                    Using   dr   As   SqlDataReader   =   _
                            cmd.ExecuteReader(Data.CommandBehavior.CloseConnection)

                        If   dr.Read()   Then


                            'Create   result   object
                            result   =   New   Magazine
                            With   result
                                ._MagazineID   =   CInt(dr(0))
                                ._M_No   =   CStr(dr(1))
                                ._Prol_Title   =   CStr(dr(2))
                            End   With
                        End   If
                    End   Using
                End   Using
            End   Using
        Catch   ex   As   Exception
            'No   error   handling
            Throw   ex
        End   Try
        Return   result
    End   Function


    Public   Sub   getResult(ByVal   MagazineID   As   Integer)
'???????     是不是这几行有问题   ????????????????????????
        Const   sql   As   String   =   "select   top   1   MagazineID,   M_No,   prol_title   "   &   _
                                                "from   magazine   where   MagazineID={0} "
'???????     是不是这几行有问题   ????????????????????????
        Try
            'Open   connection
            Using   cn   As   New   SqlConnection(conn)
                Using   cmd   As   New   SqlCommand(String.Format(sql,   MagazineID),   cn)
                    cn.Open()
                    Using   dr   As   SqlDataReader   =   _
                            cmd.ExecuteReader(Data.CommandBehavior.CloseConnection)

                        If   dr.Read()   Then
                            'Create   result   object
                            _MagazineID   =   CInt(dr(0))
                            _M_No   =   CStr(dr(1))


                            _Prol_Title   =   CStr(dr(2))

                        End   If
                    End   Using
                End   Using
            End   Using
        Catch   ex   As   Exception
            'No   error   handling
            Throw   ex
        End   Try
    End   Sub
End   Class
##########     end:   Magazine.vb类文件     ########################


##############   begin:commend.aspx文件   #############################
<%@   Page   Language= "VB "   Debug= "true "     MasterPageFile= "~/Cla.master "     CodeFile= "commend.aspx.vb "   Inherits= "commend "   title= "Untitled   Page "   %>

<%@   Import   Namespace= "System.IO "   %>
<%@   Import   Namespace= "alaok.Cla.ADONET "   %>


<script   runat= "server ">
    Protected   Sub   Page_Load(ByVal   Src   As   Object,   ByVal   E   As   EventArgs)
       
       
        Dim   intNum   As   Integer   =   8
       
        Dim   mgzn   As   New   Magazine()
        mgzn.getResult(8)
       
    End   Sub
   
   

</script>


<asp:Content   ID= "Content1 "   ContentPlaceHolderID= "ContentPlaceHolder1 "   Runat= "Server ">
    <form   id= "form1 "   runat= "server ">
    <TABLE   WIDTH= "764 "   BORDER= "0 "   CELLSPACING= "0 "   CELLPADDING= "0 "   ALIGN= "CENTER ">  
       

        <TR>  
            <TD   WIDTH= "30 "   BGCOLOR= "#FAFCFF "   ROWSPAN= "4 "   VALIGN= "TOP "> &nbsp; </TD>
            <TD   WIDTH= "150 "   BGCOLOR= "A2DABE "   ROWSPAN= "4 "   VALIGN= "TOP ">  
                <BR> <P>    <IMG   SRC= "images/ad8.jpg "> </P> </TD> <TD   BGCOLOR= "#FFFFFF "   VALIGN= "TOP "   HEIGHT= "5 "> </TD>
            <TD   BGCOLOR= "#FFFFFF "   VALIGN= "TOP "   WIDTH= "20 ">   </TD>
        </TR>  
        <TR>  
            <TD   BGCOLOR= "#FFFFFF "   HEIGHT= "10 "   ALIGN= "LEFT "   CLASS= "songtida "> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b> gt;&gt; </b> <BR> </TD>


            <TD   BGCOLOR= "#FFFFFF "> &nbsp; </TD>
        </TR>  
        <TR>
            <TD   BGCOLOR= "#FFFFFF "   COLSPAN= "2 ">  
                <TABLE   WIDTH= "90% "   BORDER= "0 "   CELLSPACING= "0 "   CELLPADDING= "0 "   height=1   ALIGN= "CENTER ">  
                    <TR> <TD   BGCOLOR= "#000000 "> </TD> </TR>  
                </TABLE>
            </TD>
        </TR>
        <asp:DetailsView   ID= "DetailsView1 "   runat= "server "   AutoGenerateRows= "False "   DataSourceID= "ObjectDataSource1 "
                                Height= "50px "   Width= "125px ">
                                <Fields>
                                    <asp:BoundField   DataField= "M_N0 "   HeaderText= "M_N0 "   SortExpression= "M_N0 "   />
                                    <asp:BoundField   DataField= "EmployeeID "   HeaderText= "EmployeeID "   ReadOnly= "True "   SortExpression= "EmployeeID "   />
                                    <asp:BoundField   DataField= "Prol_Title "   HeaderText= "Prol_Title "   SortExpression= "Prol_Title "   />
                                </Fields>
                            </asp:DetailsView>
                            <asp:ObjectDataSource   ID= "ObjectDataSource1 "   runat= "server "   SelectMethod= "SelectMagazine "
                                TypeName= "Magazine ">
                                <SelectParameters>
                                    <asp:Parameter   DefaultValue= "8 "   Name= "MagazineID "   Type= "Int32 "   />
                                </SelectParameters>
                            </asp:ObjectDataSource>


<!--   文件框结果却为空,是写的eval等方法不对吗   -->
                            <asp:TextBox   runat= "server "   ID= "prol_title "   Text= ' <%#   Eval( "mgzn.prol_title ")   %> '   />

          <br> <br> <br> <br> <br> <br> <br> <br> </TD> </TR>   </TABLE> </TD> </TR>  

    </TABLE>
    </form>
</asp:Content>

##########   end:   commend.aspx文件   ###################################


用objectDataSource控件及DetailsView控件再用类中的SelectMagazine函数可以得到数据。

但用getResult中的方法后却不能在文本框中获得数据,请问到底是哪儿的原因,是
getResult方法中的 sql语句不对,还是其内赋值方式不对,
又或者是aspx中的调用及显示方法是错误的,请高手指点一下,不胜感激!!!

[解决办法]
感觉应该放在DetailsView 里面才起作用,不然它怎么知道是绑定哪个数据源
[解决办法]
你问问题要注意方式,一下子帖这么多代码。核心给出来就可以了。
[解决办法]
UP
[解决办法]
帮顶
[解决办法]
帮顶

热点排行