小编Zee*_*eeV的帖子

C#DateTime默认值Issue 01/01/0001 00:00:00

我在将DateTime插入数据库时​​遇到以下错误:

SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.
Run Code Online (Sandbox Code Playgroud)

我知道SQL日期必须在1/1/1753 12:00:00 AM和12/31/9999之间,但我的日期似乎仍然是01/01/0001 00:00:00.

我在Web服务方法中定义了以下日期:

  [DataMember]
  public DateTime RecordTimeStamp { get; set; }
Run Code Online (Sandbox Code Playgroud)

这在以下代码中用于添加到数据库中

  sqlComm.Parameters.Add("@RecordTimeStamp", SqlDbType.DateTime).Value = pCustomer.RecordTimeStamp;
Run Code Online (Sandbox Code Playgroud)

此代码从带有代码的aspx页面获取其值

  DateTime now = DateTime.Now;
  pCustomer.RecordTimeStamp = now;
Run Code Online (Sandbox Code Playgroud)

我试图让它将当前日期插入数据库,但它似乎没有从默认值更改.

c# sql datetime visual-studio-2010

5
推荐指数
1
解决办法
9219
查看次数

C#Scope_Identity问题

浏览了一些答案,似乎并不适合我.

我需要返回一个表的ID字段,所以我可以在程序的不同部分使用它,我尝试过使用

    Convert.ToInt32(sqlComm.ExecuteScalar());
Run Code Online (Sandbox Code Playgroud)

但没有运气,同样如此

    Convert.ToInt32(sqlComm.Parameters["ID"].Value);
Run Code Online (Sandbox Code Playgroud)

并且两者都返回0,即使记录已插入表中.

我将转储下面的代码,任何人都可以看到我做错了什么?

    using (SqlConnection sqlConnect = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
        {
            using (SqlCommand sqlComm = new SqlCommand("up_Insert_Address", sqlConnect))
            {
                sqlComm.CommandType = CommandType.StoredProcedure;
                sqlComm.Parameters.Add("@AddressID", SqlDbType.BigInt).Direction = ParameterDirection.Output;
                sqlComm.Parameters.Add("@AddressLineOne", SqlDbType.NVarChar, 40).Value = address.AddressLineOne;   

                try
                {
                    sqlComm.Connection.Open();
                    return Convert.ToInt32(sqlComm.ExecuteScalar());
                }

                catch (SqlException)
                {
                }

                finally
                {
                    sqlComm.Connection.Close();
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

和存储过程:

    @AddressID   Bigint OUTPUT,
    @AddressLineOne  NVarChar(40)
    AS
     BEGIN
      BEGIN TRY
      INSERT INTO Address
      (
         AddressLineOne
      )
      VALUES 
      (
         @AddressLineOne
      )

      SET @AddressID = SCOPE_IDENTITY();
    END TRY
    BEGIN CATCH
       DECLARE @Err …
Run Code Online (Sandbox Code Playgroud)

c# sql executescalar scope-identity

3
推荐指数
1
解决办法
1552
查看次数

C#数据适配器参数

我写了一些代码来从我的数据库中获取一些数据.在stored procedure只使用ID作为参数,并使用它来筛选结果.我已经运行了stored procedure使用EXEC命令SSMS,它的工作原理.但是,当我尝试使用底部的代码调用它时,它失败了,说我没有提供参数.谁能看到我做错了什么?

using (SqlConnection sqlConnect = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
{       
    try
    {
        DataTable dtBets = new DataTable("All Bets");
        using (SqlDataAdapter sqlDA = new SqlDataAdapter("up_Select_all", sqlConnect))
        {
            sqlDA.SelectCommand.Parameters.Add("@ID", SqlDbType.BigInt).Value = pCustomer.CustomerID;

            sqlDA.Fill(dtBets);
            return dtBets;
        }                        
    }

    catch (SqlException ex)
    {
        //catch code
    }
Run Code Online (Sandbox Code Playgroud)

c# sql

2
推荐指数
1
解决办法
7745
查看次数

加密比较登录时的哈希和盐渍密码

我有一个简单的密码加密器,当用户注册时,它给我一个哈希/盐渍密码存储在我的数据库中.码:

public static string GenerateHashWithSalt(string enteredPassword, string enteredSalt)
    {
        string sHashWithSalt = enteredPassword + enteredSalt;
        byte[] saltedHashBytes = Encoding.UTF8.GetBytes(sHashWithSalt);
        System.Security.Cryptography.HashAlgorithm algorithm = new System.Security.Cryptography.SHA256Managed();
        byte[] hash = algorithm.ComputeHash(saltedHashBytes);
        return Convert.ToBase64String(hash);
    }
Run Code Online (Sandbox Code Playgroud)

当用户登录时,我认为我不能简单地通过此代码返回输入的密码并进行比较,因为它会给我一个不同的结果.如何简单地将存储的密码与输入的登录密码进行比较?

c# encryption hash salt

1
推荐指数
1
解决办法
1116
查看次数

Python删除2个字符以下的任何内容

我有一个字符串列表(如下格式)

 ['email', 'go', 'a', 'instance', 'at', 'boo', 'email', 'message', 'message', 'instance', 'at', 'hello']
Run Code Online (Sandbox Code Playgroud)

如何消除两个字符以下的任何内容?

python string list

0
推荐指数
1
解决办法
153
查看次数

Haskell按顺序向元组/列表添加元素

我已经定义了一个(String,Int)对的列表.

 type PatientList = [(String,Int)]
Run Code Online (Sandbox Code Playgroud)

我需要以'name'和'number'的形式将数据添加到此列表中,其中number将在列表的每个添加中递增,例如,添加3个名称后的列表(或元组)将如下所示:

 [("bob", 1), ("ted", 2), ("harry", 3)] 
Run Code Online (Sandbox Code Playgroud)

将使用以下代码捕获名称:

  do putStr "You are? "
  name <- getLine
Run Code Online (Sandbox Code Playgroud)

我目前的解决方案是创建一个名单列表,例如(bob,ted,harry),然后使用zip,将这些列表组合如下:

 zip = [1...]["bob","ted","harry"]
Run Code Online (Sandbox Code Playgroud)

此解决方案不符合我的要求,因为我希望在不同时间添加到列表中而不是组合在一起.我怎样才能做到这一点?

haskell list

0
推荐指数
1
解决办法
2797
查看次数

Haskell Stack解释

我在哪里可以找到Haskell中Stack的一个很好的解释.目前我所知道的是:

  • 传统的抽象数据类型完全隐藏了数据的内部表示

  • 可以使用列表实现多态堆栈,而无需告知消费者其内部工作方式.

stack haskell

0
推荐指数
1
解决办法
230
查看次数

使用链表的Bubblesort实现仅部分有效

我正在尝试使用冒泡排序来对项目列表进行排序.我知道这不是最有效的分类方法 ; 但是,我需要这种方法才能继续使用更好的东西.我当前的代码部分排序列表,但我看不出我做错了什么.

public class ListComponents
{
    public int Priority;
    public string Name;
    public ListComponents Next;
}

public void bubblesort()
{
    ListComponents Current = Head; 
    int temp = 0;
    bool swapped = true;

    while (swapped)
    {
        Print(); // Debug Function to print each swap
        Current = Head.Next; // RESET CURRENT TO HEAD + 1 ON EACH ITERATION?
        swapped = false;
        for (int sort = 0; sort < (size - 1); sort++) //Size defined as # of items in list …
Run Code Online (Sandbox Code Playgroud)

c# bubble-sort

0
推荐指数
1
解决办法
2150
查看次数

Python将值从一个列表添加到另一个列表中

我有一系列的格式列表:

a = [1,2,3,4,5,6,7]
b = [1,2,3,4,5,6,7]
Run Code Online (Sandbox Code Playgroud)

如何将相应的值添加到一起以创建新列表,例如:

将1和1加在一起,2和2加在一起......

c = [2,4,6,8,10,12,14]
Run Code Online (Sandbox Code Playgroud)

注意:每个列表中的值都相同.

python list

-1
推荐指数
1
解决办法
824
查看次数

Haskell Zip Parse Error

我试图在Haskell中使用zip函数将两个列表连接在一起.可以定义列表并收集如下信息:

 priority <- getLine    
 let priorityList = []
 priority : priorityList

 name<- getLine
 let nameList = []
 name : nameList
Run Code Online (Sandbox Code Playgroud)

收集信息后,预期的输出将是priorityList = [1,2,3]&nameList = [test1,test2,test3].但是,这对于问题的目的并不重要,可以假设这两个列表的格式如下:

  priorityList = [1,2,3]
  nameList = [test1, test2, test3]
Run Code Online (Sandbox Code Playgroud)

我需要将列表和打印与以下功能结合起来.但是,我在输入`zip'上得到错误'解析错误'

printList :: IO ()
printList = do putStrLn "Printed Combined List"
               zip [nameList][priorityList]
Run Code Online (Sandbox Code Playgroud)

haskell

-3
推荐指数
1
解决办法
211
查看次数