如何转换文本的第一个字母并将其保存到数据库 [英] How Do I Convert A First Letter Of A Text And Save It To A Database
问题描述
我为客户创建了一个表单,我希望将客户基本信息保存在表格中,但在保存该信息时,我需要转换每个字符串的第一个字母并将其保存到数据库表格
这是我的表格的代码
< div class = form-group col-md-5 >
< label for = exampleInputEmail1 < span class =code-keyword>> 名字:< / label >
< asp: TextBox ID = txt_first_name runat = server CssClass =' form-control' 占位符 = 名字 > < / asp:TextBox >
< / div >
< div class = form-group col-md-5 >
< 标签 = exampleInputEmail1 > 中间名:< / label >
< 跨度> <跨度class =code-leadattribute> asp:TextBox ID = txt_middle_name runat = server CssClass =' form-control' 占位符 = 中间名 > < / asp:TextBox >
< / div >
< div class = form-group col-md-5 >
< label for = exampleInputEmail1 > 姓氏:< / label >
< asp:TextBox ID 跨度> < span class =code-keyword> = txt_last_name runat = server CssClass =' 表格控制' 占位符 = 姓氏 > < < span class =code-leadattribute> / asp:TextBox >
< / div >
这是保存按钮的代码
cmd = new SqlCommand( new_cust,con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue( @ invoice_associate_id,custid.ToString());
cmd.Parameters.AddWithValue( @ invoice_associate_name,txt_first_name.Text.Substring(< span class =code-digit> 0 , 1 )。ToUpper()+ txt_first_name.Text.Substring( 1 ,txt_first_name.Text.Length - 1 )。ToLower());
注释代码完美无缺,但在传递参数时我需要转换它是否有任何方法可以实现这一点
请建议方法来做到这一点,并提前感谢为您提供帮助您好,
请尝试以下方法:
cmd.Parameters.AddWithValue( @ invoice_associate_name,CultureInfo.CurrentCulture .TextInfo.ToTitleCase(txt_first_name.Text.ToLower()));
它使用ToTitleCase 方法top达到了预期的格式。
...将.ToLower()添加到文本中可确保实现所需的格式,即使用户在文本框中输入所有大写字母也是如此。
希望它有所帮助。
在将它发送到存储过程之前使用此函数转换
public static string FirstCharToUpper(< span class =code-keyword> string input)
{
if ( String .IsNullOrEmpty(input))
throw new ArgumentException( 错误);
return input.First()。ToString()。ToUpper()+ String .Join ( ,input.Skip( 1 ));
}
这会将字符串的每个首字母转换为Upper
public static string FirstCharToUpper( string str)
{
return CultureInfo.CurrentCulture.TextInfo.ToTitleCase(str.ToLower());
}
I have created a Form for customer i want to save the customer basic information in a table but while saving that information i need to convert First Letter of a every string and save it to database table
Here is code for my form
<div class="form-group col-md-5">
<label for="exampleInputEmail1">First Name : </label>
<asp:TextBox ID="txt_first_name" runat="server" CssClass='form-control' placeholder="First Name"></asp:TextBox>
</div>
<div class="form-group col-md-5">
<label for="exampleInputEmail1">Middle Name : </label>
<asp:TextBox ID="txt_middle_name" runat="server" CssClass='form-control' placeholder="Middle Name"></asp:TextBox>
</div>
<div class="form-group col-md-5">
<label for="exampleInputEmail1">Last Name : </label>
<asp:TextBox ID="txt_last_name" runat="server" CssClass='form-control' placeholder="Last Name"></asp:TextBox>
</div>
Here Is My Code For Save Button
//string fn = txt_first_name.Text.Substring(0, 1).ToUpper() + txt_first_name.Text.Substring(1, txt_first_name.Text.Length-1 ).ToLower();
cmd = new SqlCommand("new_cust", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@invoice_associate_id", custid.ToString());
cmd.Parameters.AddWithValue("@invoice_associate_name", txt_first_name.Text.Substring(0, 1).ToUpper() + txt_first_name.Text.Substring(1, txt_first_name.Text.Length - 1).ToLower());
The commented code works perfectly but while passing parameters i need to convert it is there is any way to achieve this
Please suggest the methods to do this and thanks in advance for your help
Hi,
Try the following:
cmd.Parameters.AddWithValue("@invoice_associate_name", CultureInfo.CurrentCulture.TextInfo.ToTitleCase(txt_first_name.Text.ToLower()));
It uses the ToTitleCase method top achieve the desired format.
... adding the .ToLower() to your text ensures the desired format is achieved, even if the user enter all capital letters into your textbox.
Hope it help.
Use this function to convert before sending it to stored procedure
public static string FirstCharToUpper(string input) { if (String.IsNullOrEmpty(input)) throw new ArgumentException("Error"); return input.First().ToString().ToUpper() + String.Join("", input.Skip(1)); }
this will convert every first letter of string to Upper
public static string FirstCharToUpper(string str) { return CultureInfo.CurrentCulture.TextInfo.ToTitleCase(str.ToLower()); }
这篇关于如何转换文本的第一个字母并将其保存到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!