示例(注意案例):
string s = "Hello world!";
String s = "Hello world!";
Run Code Online (Sandbox Code Playgroud)
每种使用的准则是什么?有什么区别?
我正在浏览另一个开发人员编写的一些代码,我不确定是什么long?意思:
protected string AccountToLogin(long? id)
{
string loginName = "";
if (id.HasValue)
{
try
{....
Run Code Online (Sandbox Code Playgroud) 我一直在使用SqlCeConnection在C#中使用SQL和数据库.我一直在使用ExecuteReader来读取读入Longs的记录ID的结果和BigInt值.
今天我一直在玩SQL语句,这些语句使用基于COUNT的语句('SELECT COUNT(*)FROM X')并且一直在使用ExecuteScalar来读取这些单值结果.
但是,我遇到了一个问题.我似乎无法将值存储到Long数据类型中,我一直在使用它.我可以将它们存储到Int64中.
我一直在使用BigInt作为记录ID来获取最大可能的记录数.
因此,BigInt 8字节是Int64.不是Long等于Int64,因为它们都是64位有符号整数?
因此,为什么我不能将Int64转换为Long?
long recordCount =0;
recordCount = (long)selectCommand.ExecuteScalar();
Run Code Online (Sandbox Code Playgroud)
错误是:
指定演员表无效.
我可以将BigInt读成Long.这不成问题.我无法读取SQL COUNT到long.
COUNT返回一个Int(Int32),所以问题实际上是将Int32转换为long.
我注意到,从转换double到long 改变的值时,要转换的数量是很大,即使是远低于最大值的long。例如,有人可以解释为什么这种转换不能按预期工作:
Convert.ToInt64(600000000000040000d)
// Return => 600000000000039936
Convert.ToInt64(600000000000040000L)
// Return => 600000000000040000
Run Code Online (Sandbox Code Playgroud)
这给我的公式带来了一些麻烦......谢谢。