locked
Convert VB code to C# RRS feed

  • 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