Answered by:
Convert VB code to C#

Question
-
User-90830185 posted
How can I convert the code below to C#?
Dim userId As Integer = 0
Dim strFirstName As String = ""
Dim constr As String = ConfigurationManager.ConnectionStrings("Leaflet").ConnectionString
Dim strPassword As String = AmaApps.CommonCode.Encrypt(Login1.Password)
Using con As New SqlConnection(constr)
Using cmd As New SqlCommand("Validate_User")
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@usrName", Login1.UserName)
cmd.Parameters.AddWithValue("@usrPassword", strPassword)
cmd.Parameters.Add("@usrFirstName", SqlDbType.VarChar, 100)
cmd.Parameters("@usrFirstName").Direction = ParameterDirection.Output
cmd.Connection = con
con.Open()
userId = Convert.ToInt32(cmd.ExecuteScalar())
If userId >= 0 Then
strFirstName = cmd.Parameters("@usrFirstName").Value.ToString()
End If
con.Close()
End Using
Select Case userId
Case -1
lblMsg01.Text = "User ID and/or password is incorrect."
lblMsg01.ForeColor = System.Drawing.Color.Red
Exit Select
Case -2
lblMsg01.Text = "Account has not been activated."
lblMsg01.ForeColor = System.Drawing.Color.HotPink
Exit Select
Case Else
Session("Username") = Login1.UserName
Session("FirstName") = strFirstName
Exit Select
End Select
End Using
Where "Validate_User" StoredProcedure uses UserName and strPassword to read and returned usrId and if this is greaer than 0 then FirstName can be extracted and saved both as session variables?
Saturday, November 18, 2017 1:22 AM
Answers
-
User2053451246 posted
Did you try this yet: http://converter.telerik.com/
Here are the results:
int userId = 0; string strFirstName = ""; string constr = ConfigurationManager.ConnectionStrings("Leaflet").ConnectionString; string strPassword = AmaApps.CommonCode.Encrypt(Login1.Password); using (SqlConnection con = new SqlConnection(constr)) { using (SqlCommand cmd = new SqlCommand("Validate_User")) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@usrName", Login1.UserName); cmd.Parameters.AddWithValue("@usrPassword", strPassword); cmd.Parameters.Add("@usrFirstName", SqlDbType.VarChar, 100); cmd.Parameters("@usrFirstName").Direction = ParameterDirection.Output; cmd.Connection = con; con.Open(); userId = Convert.ToInt32(cmd.ExecuteScalar()); if (userId >= 0) { strFirstName = cmd.Parameters("@usrFirstName").Value.ToString(); } con.Close(); } switch (userId) { case -1: lblMsg01.Text = "User ID and/or password is incorrect."; lblMsg01.ForeColor = System.Drawing.Color.Red; break; // TODO: might not be correct. Was : Exit Select break; case -2: lblMsg01.Text = "Account has not been activated."; lblMsg01.ForeColor = System.Drawing.Color.HotPink; break; // TODO: might not be correct. Was : Exit Select break; default: Session["Username"] = Login1.UserName; Session["FirstName"] = strFirstName; break; // TODO: might not be correct. Was : Exit Select break; } } //======================================================= //Service provided by Telerik (www.telerik.com) //Conversion powered by NRefactory. //Twitter: @telerik //Facebook: facebook.com/telerik //=======================================================
- Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
Saturday, November 18, 2017 2:00 AM
All replies
-
User2053451246 posted
Did you try this yet: http://converter.telerik.com/
Here are the results:
int userId = 0; string strFirstName = ""; string constr = ConfigurationManager.ConnectionStrings("Leaflet").ConnectionString; string strPassword = AmaApps.CommonCode.Encrypt(Login1.Password); using (SqlConnection con = new SqlConnection(constr)) { using (SqlCommand cmd = new SqlCommand("Validate_User")) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@usrName", Login1.UserName); cmd.Parameters.AddWithValue("@usrPassword", strPassword); cmd.Parameters.Add("@usrFirstName", SqlDbType.VarChar, 100); cmd.Parameters("@usrFirstName").Direction = ParameterDirection.Output; cmd.Connection = con; con.Open(); userId = Convert.ToInt32(cmd.ExecuteScalar()); if (userId >= 0) { strFirstName = cmd.Parameters("@usrFirstName").Value.ToString(); } con.Close(); } switch (userId) { case -1: lblMsg01.Text = "User ID and/or password is incorrect."; lblMsg01.ForeColor = System.Drawing.Color.Red; break; // TODO: might not be correct. Was : Exit Select break; case -2: lblMsg01.Text = "Account has not been activated."; lblMsg01.ForeColor = System.Drawing.Color.HotPink; break; // TODO: might not be correct. Was : Exit Select break; default: Session["Username"] = Login1.UserName; Session["FirstName"] = strFirstName; break; // TODO: might not be correct. Was : Exit Select break; } } //======================================================= //Service provided by Telerik (www.telerik.com) //Conversion powered by NRefactory. //Twitter: @telerik //Facebook: facebook.com/telerik //=======================================================
- Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
Saturday, November 18, 2017 2:00 AM -
User61956409 posted
Hi Moodhi,
Firstly, as ryanbesko mentioned, you can use some code converter to convert code from VB to C#, but sometimes there will be some error with convert result, you should re-correct error with convert result by yourself. For example, the convert result of this code is:
string constr = ConfigurationManager.ConnectionStrings("Leaflet").ConnectionString;
but we can not use ConfigurationManager.ConnectionStrings as a method, it should be written as:
string constr = ConfigurationManager.ConnectionStrings["Leaflet"].ConnectionString;
Besides, you check and know SqlConnection, SqlCommand object and the switch statement in C#, and then you can manually convert your code to C#.
With Regards,
Fei Han
<sub></sub><sup></sup>
<sub></sub><sup></sup>
Monday, November 20, 2017 2:58 AM