1

2つのテキストボックス「txtStartDate」と「txtEndDate」にリンクする2つのカレンダーコントロール「cldStartDate」と「cldEndDate」があります。日付を選択すると、これらのテキストボックスに日付が保持されます。データベースに日付を追加するコードを取得しようとしています。次のフィールドがあります。

-ProjectName -Description -StartDate -EndDate

'StartDate'と'EndDate'はどちらも、私のデータベースではDateTimeタイプです。誰かが私のコードのどこが間違っているのか指摘してもらえますか?日付値をDateTimeとして渡すようにコードを変更する必要があると思います。誰かが私がそれをどのように行うことができるかについての考えを持っていますか?コードは以下のとおりです。ありがとう!

Protected Sub btnAddProject_Click(ByVal sender As Object、ByVal e As System.EventArgs)HandlesbtnAddProject.Click

    Dim projectName As String
    Dim projectDescription As String
    Dim startdate As String
    Dim enddate As String

    projectName = txtProjectName.Text
    projectDescription = txtProjectName.Text
    startdate = txtStartDate.Text
    enddate = txtEndDate.Text

    ' check the validity of information entered
    Dim isValid As Boolean
    isValid = True

    If String.IsNullOrEmpty(projectName) Or String.IsNullOrEmpty(projectDescription)     Then
        isValid = False
    End If

    If isValid Then
        'add everything to the database
        Dim db As New AgileClassesDataContext()

        Dim startDate As String
        startDate = DateTime.Parse(startDate)

        Dim endDate As String
        endDate = DateTime.Parse(endDate)

        ' create a project to populate a row in the PROJECT table
        Dim project As New Project With _
        {.ProjectName = projectName, _
         .Description = projectDescription _
         .StartDate = startdate _
         .EndDate = enddate}

        ' add the new project to the PROJECT table
        db.Projects.InsertOnSubmit(project)

        ' submit the changes to the database
        Try
            db.SubmitChanges()
        Catch ex As Exception
            Console.WriteLine(ex)
            db.SubmitChanges()
        End Try'
4

1 に答える 1

1

差し迫った問題は、オブジェクト初期化子の構文にあると思います。これの代わりに:

Dim project As New Project With _
    {.ProjectName = projectName, _
     .Description = projectDescription _
     .StartDate = startdate _
     .EndDate = enddate}

...各プロパティの後にコンマを付ける必要があります。

Dim project As New Project With { _
    .ProjectName = projectName, _
    .Description = projectDescription, _
    .StartDate = startdate, _
    .EndDate = enddate }
于 2012-11-22T17:44:09.150 に答える