我的代码生成器生成的样本代码(VB.NET)
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
Imports System
Imports System.Collections.Generic
Imports System.Text
Namespace JoeyCodeGenerator
Public Class User
#Region "Properties"
Private _UserID As Integer
Private _AccountBalance As System.Decimal
Private _IsAdmin As Boolean
Private _UserName As String
Public Property UserID() As Integer
Get
Return Me._UserID
End Get
Set(ByVal value As Integer)
Me._UserID = value
End Set
End Property
Public Property AccountBalance() As System.Decimal
Get
Return Me._AccountBalance
End Get
Set(ByVal value As System.Decimal)
Me._AccountBalance = value
End Set
End Property
Public Property IsAdmin() As Boolean
Get
Return Me._IsAdmin
End Get
Set(ByVal value As Boolean)
Me._IsAdmin = value
End Set
End Property
Public Property UserName() As String
Get
Return Me._UserName
End Get
Set(ByVal value As String)
Me._UserName = value
End Set
End Property
#End Region
End Class
End Namespace
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration
Namespace JoeyCodeGenerator
Public Class UserDataBase
#Region "Properties"
Private Const CONNECTION_STRING As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
#End Region
#Region "Methods"
#Region "Insert"
Public Shared Sub Insert(ByVal instance As User)
Using conn As SqlConnection = New SqlConnection(CONNECTION_STRING)
Using comm As SqlCommand = New SqlCommand()
comm.Connection = conn
comm.CommandType = CommandType.StoredProcedure
comm.CommandText = "User_Insert"
comm.Parameters.AddWithValue("@AccountBalance", instance.AccountBalance)
comm.Parameters.AddWithValue("@IsAdmin", instance.IsAdmin)
comm.Parameters.AddWithValue("@UserName", instance.UserName)
Dim sp As SqlParameter
sp = comm.Parameters.Add("@UserID", SqlDbType.Int)
sp.Direction = ParameterDirection.Output
sp = New SqlParameter()
sp.Direction = ParameterDirection.ReturnValue
comm.Parameters.Add(sp)
conn.Open()
comm.ExecuteNonQuery()
If (CType(sp.Value, Integer) <> 0) Then
Throw New Exception("Errors happened when executing the stored procedure")
End If
instance.UserID = CType(comm.Parameters("@UserID").Value, Integer)
conn.Close()
End Using
End Using
End Sub
#End Region
#Region "Select"
Public Shared Sub [Select](ByVal instance As User)
Using conn As SqlConnection = New SqlConnection(CONNECTION_STRING)
Using comm As SqlCommand = New SqlCommand()
comm.Connection = conn
comm.CommandType = CommandType.StoredProcedure
comm.CommandText = "User_Select"
comm.Parameters.AddWithValue("@UserID", instance.UserID)
Dim sp As SqlParameter
sp = New SqlParameter()
sp.Direction = ParameterDirection.ReturnValue
comm.Parameters.Add(sp)
conn.Open()
Using sdr As SqlDataReader = comm.ExecuteReader(CommandBehavior.CloseConnection)
If (sdr.Read()) Then
instance.AccountBalance = CType(sdr("AccountBalance"), System.Decimal)
instance.IsAdmin = CType(sdr("IsAdmin"), Boolean)
instance.UserName = CType(sdr("UserName"), String)
End If
sdr.Close()
If (CType(sp.Value, Integer) <> 0) Then
Throw New Exception("Errors happened when executing the stored procedure")
End If
End Using
End Using
End Using
End Sub
#End Region
#Region "Update"
Public Shared Sub Update(ByVal instance As User)
Using conn As SqlConnection = New SqlConnection(CONNECTION_STRING)
Using comm As SqlCommand = New SqlCommand()
comm.Connection = conn
comm.CommandType = CommandType.StoredProcedure
comm.CommandText = "User_Update"
comm.Parameters.AddWithValue("@UserID", instance.UserID)
comm.Parameters.AddWithValue("@AccountBalance", instance.AccountBalance)
comm.Parameters.AddWithValue("@IsAdmin", instance.IsAdmin)
comm.Parameters.AddWithValue("@UserName", instance.UserName)
Dim sp As SqlParameter
sp = new SqlParameter()
sp.Direction = ParameterDirection.ReturnValue
comm.Parameters.Add(sp)
conn.Open()
comm.ExecuteNonQuery()
If (CType(sp.Value, Integer) <> 0) Then
Throw New Exception("Errors happened when executing the stored procedure")
End If
conn.Close()
End Using
End Using
End Sub
#End Region
#Region "Delete"
Public Shared Sub Delete(ByVal instance As User)
Using conn As SqlConnection = New SqlConnection(CONNECTION_STRING)
Using comm As SqlCommand = New SqlCommand()
comm.Connection = conn
comm.CommandType = CommandType.StoredProcedure
comm.CommandText = "User_Delete"
comm.Parameters.AddWithValue("@UserID", instance.UserID)
Dim sp As SqlParameter
sp = New SqlParameter()
sp.Direction = ParameterDirection.ReturnValue
comm.Parameters.Add(sp)
conn.Open()
comm.ExecuteNonQuery()
If (CType(sp.Value, Integer) <> 0) Then
Throw New Exception("Errors happened when executing the stored procedure")
End If
conn.Close()
End Using
End Using
End Sub
#End Region
#End Region
End Class
End Namespace
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
Imports System
Imports System.Collections.Generic
Imports System.Text
Namespace JoeyCodeGenerator
Public Class UserBroker
#Region "Methods"
#Region "Insert"
Public Shared Sub Insert(ByVal instance As User)
'add business logic here
UserDataBase.Insert(instance)
End Sub
#End Region
#Region "Select"
Public Shared Sub [Select](ByVal instance As User)
'add business logic here
UserDataBase.Select(instance)
End Sub
#End Region
#Region "Update"
Public Shared Sub Update(ByVal instance As User)
'add business logic here
UserDataBase.Update(instance)
End Sub
#End Region
#Region "Delete"
Public Shared Sub Delete(ByVal instance As User)
'add business logic here
UserDataBase.Delete(instance)
End Sub
#End Region
#End Region
End Class
End Namespace