VB.Net中的sqlParameters数组

Fab*_*elz 3 vb.net arrays sqlparameter

我正在尝试在VB.Net中创建一个类型大小的参数数组:

Dim parameters() As SqlParameter = New SqlParameter() _
        {
          New SqlParameter("@first_name", SqlDbType.VarChar, 50) {Value = "john"},
          New SqlParameter("@last_name", SqlDbType.VarChar, 50) {Value = "doe"},
          New SqlParameter("@age", SqlDbType.Int) {Value = 18},
          New SqlParameter("@id", SqlDbType.Int) {Value = 123}
        }
Run Code Online (Sandbox Code Playgroud)

但VS说:价值'没有宣布.由于其保护级别,它可能无法访问

上面的代码有什么问题?

谢谢!

Ken*_*eth 9

您需要将VB语法用于对象初始值设定项:

Dim parameters() As SqlParameter = New SqlParameter() _
        {
          New SqlParameter("@first_name", SqlDbType.VarChar, 50) With { .Value = "john"},
          New SqlParameter("@last_name", SqlDbType.VarChar, 50) With { .Value = "doe"},
          New SqlParameter("@age", SqlDbType.Int) With { .Value = 18},
          New SqlParameter("@id", SqlDbType.Int) With { .Value = 123}
        }
Run Code Online (Sandbox Code Playgroud)

  • 为什么一团糟?它与c#完全不同.不要误会我的意思,我也更喜欢c#,但是看不出这有什么问题. (2认同)