私のコードに関する何かが正しくないようです。それは面倒であまり論理的ではないと感じます。
誰かが私の悲惨さから私を追い出し、私がこのビットを大丈夫に書いたことを私に知らせてもらえますか?
ページが読み込まれると、ユーザーが既存の本を更新しようとしているか、新しい本を作成しようとしているかを確認するのは非常に簡単です。
コードは次のとおりです。
Public Property modID As Int32
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim bookID = Request.QueryString("bookID")
If Not String.IsNullOrWhiteSpace(bookID) Then
newBook = False
Else
newBook = True
Create() 'create a new book
bookID = modID.ToString
End If
If Not newBook Then
commitData() 'saves data on form
End If
If Not IsPostBack And Not newBook Then
Page.DataBind()
populateControls() 'populate my dropdown lists and radio/checkbox controls
populateDatasets() 'load datasets to be used later
End If
End Sub
Public Sub Create()
'create a new book
newBook = False
Using dbcon As New SqlConnection(DBUtilities.ConnectionStringDefault)
dbcon.Open()
Dim cmd As New SqlCommand(CreateSQL, dbcon)
cmd.Parameters.Add(New SqlParameter("@authorID", currentUser))
modID = DirectCast(cmd.ExecuteScalar(), Int32)
End Using
navmod = NavbookFactory.Getbook(CInt(modID))
populateNewBook()
End Sub