让我说我有一个string str = "012345";我想将它转换为一个看起来像的数组intAry = {0, 1, 2, 3, 4, 5};.有任何想法吗?
我试过这样的..
for (int i = 0; i < str.Length; i++)
{
intAry[i] = Convert.ToInt32(str[i]);
}
Run Code Online (Sandbox Code Playgroud)
但到阵列的是48,49等.我应该在这里使用哪种正确的方法?
我有一列nullable列在我的表中的SQL Server.我试图存储这样的值.
if (chkQCE3AS1.Checked)
cmd.Parameters.AddWithValue("QCEA1S1", selectedID);
else
cmd.Parameters.AddWithValue("QCEA1S1", "");
Run Code Online (Sandbox Code Playgroud)
但那会在列中存储一个空格.什么是存储null价值的另一种方式?或者它甚至是个好主意?
我试图将字符串添加到List并将列表导出为csv文件,但我得到的结果不是我想要的方式.这是代码 -
List<string> values = new List<string>();
using (StreamReader sr = new StreamReader(filePath))
{
while (sr.Peek() != -1)
{
string line = sr.ReadLine();
List<string> lineValues = line.Split(',').ToList();
var tempMinInt = 1;
var tempValue = 1;
var tempValInt = Convert.ToInt32(lineValues[4]);
if (tempValInt % 60 != 0)
{
tempMinInt = (tempValInt / 60) + 1;
tempValue = tempMinInt * 30;
}
else
{
tempMinInt = tempValInt / 60;
tempValue = tempMinInt * 30;
}
values.Add(lineValues + "," + tempValue.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
以下是示例输入数据: …
我有这样下面的代码来检索数据库数据,当我从Visual Studio中运行代码分析,它表明我调用Dispose方法SqlConnection,DataTable和SqlDataAdapter对象.
SqlConnection sqlconn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString);
SqlCommand cmd = sqlconn.CreateCommand();
cmd.CommandText = "SELECT * FROM tbl_serial WHERE serial = @serial";
cmd.Parameters.AddWithValue("@serial", txtQuery.Text);
DataTable dt = new DataTable();
SqlDataAdapter da = new SqlDataAdapter();
try
{
sqlconn.Open();
da.SelectCommand = cmd;
da.Fill(dt);
}
catch (SqlException ex)
{
lblStatus.Text = ex.Message;
}
finally
{
sqlconn.Close();
}
if (dt.Rows.Count > 0)
{
lblStatus.Text = "FOUND!";
}
else
{
lblStatus.Text = "NOT FOUND!";
}
Run Code Online (Sandbox Code Playgroud)
这是我第一次这样做,我sqlconn就像这样调用dispose方法-
finally
{ …Run Code Online (Sandbox Code Playgroud) 我正在尝试将Int64变量存储到bigint数据类型的数据列.以下是我的sql insert查询和参数声明.
cmd.CommandText = "INSERT INTO tbl_subscribers VALUES ('@callerID2', '@timeStamp', '@unregisterDate ', '1')";
cmd.Parameters.Add("@callerID2", SqlDbType.BigInt);
cmd.Parameters["@callerID2"].Value = SMSObject.callerID;
cmd.Parameters.Add("@timeStamp", SqlDbType.DateTime);
cmd.Parameters["@timeStamp"].Value = SMSObject.timeStamp.ToString("yyyy-MM-dd HH:mm:ss");
cmd.Parameters.Add("@unregisterDate", DBNull.Value);
cmd.Parameters["@unregisterDate"].Value = DBNull.Value;
Run Code Online (Sandbox Code Playgroud)
当它试图存储数据时,我明白了
将数据类型varchar转换为bigint时出错.
有什么建议吗?
这是我的情景.我正在做一个电话号码注册组件,它会拒绝一些带有特定前缀的号码(例如"95973"或"95949").我已经将这些前缀存储在数据库中了.
我想知道的是,是否有任何C#方法可以用来匹配注册号和我想拒绝的前缀.
更新了PSEUDO CODE
BEGIN
GET phone num FROM querystring
FOR EACH banned prefix IN DB
CHECK if phone num BEGINS WITH banned prefix
IF TRUE, RESPOND TO phone num WITH error message
ELSE, REGISTER phone num
END EACH
END
Run Code Online (Sandbox Code Playgroud)