dan_cm 0 Denunciar post Postado Fevereiro 10, 2009 Olá pessoal Estou a criar um formulário de cadastro de estudantes em vb.net com ligação a bd em sql server. Estou a usar procedimentos armazenados(stored procedure). Ao criar o SP tudo corre normal, executo e os dados são inseridos na tabela,mas os dados quando são introduzidos a partir do formulário não são inseridos. O que faço?o código é: <%@ Page Language="VB" MasterPageFile="~/princmasterpage.master" AutoEventWireup="false" CodeFile="cadastroEstudante.aspx.vb" Inherits="cadastroEstudante" title="Untitled Page" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> <table> <tr> <td colspan="2" class="fcaract"> Cadastro de Estudantes </td> </tr> <tr> <td align="right" >Número de Matrícula </td> <td> <asp:TextBox ID="txtbnummat" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Nome </td> <td> <asp:TextBox ID="txtbnome" runat="server"></asp:TextBox> </td> </tr> <tr> <td align="right" >Telefone </td> <td> <asp:TextBox ID="txtbtel" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Endereço </td> <td> <asp:TextBox ID="txtbendereco" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Número do B.I. </td> <td> <asp:TextBox ID="txtbnumbi" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Data de Emissão </td> <td> <asp:TextBox ID="txtbdata" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Ano Académico </td> <td> <asp:TextBox ID="txtbanoacad" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >Curso </td> <td> <asp:TextBox ID="txtbcurso" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right" >E-mail </td> <td> <asp:TextBox ID="txtbemail" runat="server"></asp:TextBox></td> </tr> <tr> <td align="right"> <asp:Button ID="Btncadastrar" runat="server" Text="Cadastrar" /></td> <td align="left"> <asp:Button ID="btnlimpar" runat="server" Text="Limpar" /></td> </tr> <tr> <td> <asp:Label ID="lblmsg" runat="server"></asp:Label></td> </tr> </table> </asp:Content> classe estudante.vb Imports Microsoft.VisualBasic Imports System.Data Imports System.Data.SqlClient Public Class Estudante Private _Num_matricula As Integer Private _nome As String Private _telefone As String Private _endereco As String Private _numbi As String Private _data_emissao As Date Private _ano_academico As Integer Private _curso As String Private _email As String Private _senha As String Public Property Num_matricula() As Integer Get Return _Num_matricula End Get Set(ByVal value As Integer) _Num_matricula = value End Set End Property Public Property nome() As String Get Return _nome End Get Set(ByVal value As String) _nome = value End Set End Property Public Property telefone() As String Get Return _telefone End Get Set(ByVal value As String) _telefone = value End Set End Property Public Property endereco() As String Get Return _endereco End Get Set(ByVal value As String) _endereco = value End Set End Property Public Property numbi() As String Get Return _numbi End Get Set(ByVal value As String) _numbi = value End Set End Property Public Property data_emissao() As Date Get Return _data_emissao End Get Set(ByVal value As Date) _data_emissao = value End Set End Property Public Property ano_academico() As Integer Get Return _ano_academico End Get Set(ByVal value As Integer) _ano_academico = value End Set End Property Public Property curso() As String Get Return _curso End Get Set(ByVal value As String) _curso = value End Set End Property Public Property email() As String Get Return _email End Get Set(ByVal value As String) _email = value End Set End Property Public Property senha() As String Get Return _senha End Get Set(ByVal value As String) _senha = value End Set End Property Public Shared Function inserir_estudante(ByVal mystudent As Estudante) As Integer Dim cnn As New SqlConnection(ConfigurationInfo.conectionStr) Try cnn.Open() Dim sqlcmd As New SqlCommand("inserir_estudante", cnn) sqlcmd.CommandType = CommandType.StoredProcedure sqlcmd.Parameters.AddWithValue("@num_matricula", mystudent.Num_matricula) sqlcmd.Parameters.AddWithValue("@nome", mystudent.nome) sqlcmd.Parameters.AddWithValue("@telefone", mystudent.telefone) sqlcmd.Parameters.AddWithValue("@endereco", mystudent.endereco) sqlcmd.Parameters.AddWithValue("@numbi", mystudent.numbi) sqlcmd.Parameters.AddWithValue("@data_emissao", mystudent.data_emissao) sqlcmd.Parameters.AddWithValue("@ano_academico", mystudent.ano_academico) sqlcmd.Parameters.AddWithValue("@curso", mystudent.curso) sqlcmd.Parameters.AddWithValue("@email", mystudent.email) sqlcmd.Parameters.AddWithValue("@senha", mystudent.senha) sqlcmd.ExecuteNonQuery() Return 1 Catch ex As Exception Return 0 End Try End Function Public Shared Function validar_estudante(ByVal usuario As String, ByVal senha As String) As Boolean Dim cnn As New SqlConnection(ConfigurationInfo.conectionStr) Dim counter As Integer Try cnn.Open() Dim sqlcmd As New SqlCommand("validar_estudante", cnn) sqlcmd.CommandType = CommandType.StoredProcedure sqlcmd.Parameters.AddWithValue("@num_matricula", usuario) sqlcmd.Parameters.AddWithValue("@senha", senha) Dim depreader As SqlDataReader = sqlcmd.ExecuteReader() While depreader.Read If Not (depreader("contador")) Is System.DBNull.Value Then counter = depreader("contador") End If End While If counter = 1 Then Return True Else Return False End If Catch val As Exception Return False End Try End Function End Class cadastroestudante.aspx.vb Partial Class cadastroEstudante Inherits System.Web.UI.Page Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnlimpar.Click Me.txtbanoacad.Text = String.Empty Me.txtbcurso.Text = String.Empty Me.txtbdata.Text = String.Empty Me.txtbemail.Text = String.Empty Me.txtbendereco.Text = String.Empty Me.txtbnome.Text = String.Empty Me.txtbnumbi.Text = String.Empty Me.txtbnummat.Text = String.Empty Me.txtbtel.Text = String.Empty End Sub Protected Sub Btncadastrar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Btncadastrar.Click Dim est As New Estudante est.ano_academico = Me.txtbanoacad.Text est.curso = Me.txtbcurso.Text est.data_emissao = Me.txtbdata.Text est.email = Me.txtbemail.Text est.endereco = Me.txtbendereco.Text est.nome = Me.txtbnome.Text est.numbi = Me.txtbnumbi.Text est.Num_matricula = Me.txtbnummat.Text est.telefone = Me.txtbtel.Text Dim result As Integer = Estudante.inserir_estudante(est) If result = 1 Then lblmsg.Text = "O estudante foi inserido no sistema." Else lblmsg.Text = " Não foi possível inserir o estudante.Volte a tentar." End If End Sub End Class Desculpem o post,mas é que não vejo mesmo onde estou a errar...já fiz algo assim e funcionou... Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Fevereiro 11, 2009 É dificil testar o código inteiro. Ocorre algum erro? Já debugou o código para ver se para em alguma linha? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites