小编Gab*_*art的帖子

如何在DataReader上实现Peek()函数?

Peekado.net中的DataReader 似乎没有方法.我希望能够在循环阅读器之前执行一些一次性处理,能够查看第一行中的数据而不会导致后续迭代跳过它会很好.完成此任务的最佳方法是什么?

我正在使用a SqlDataReader,但最好是实现尽可能通用(即适用于IDataReaderDbDataReader).

.net c# ado.net

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

7
推荐指数
2
解决办法
1585
查看次数

在数据库中以原子方式标记并返回一组行

我正在编写一个后台服务,需要处理一系列作业,作为记录存储在sqlserver表中.该服务需要找到需要工作的最早的20个作业(where status = 'new'),标记它们(set status = 'processing'),运行它们,然后更新作业.

这是我需要帮助的第一部分.可能有多个线程同时访问数据库,我想确保"标记和返回"查询以原子方式或几乎原样运行.

这项服务将花费相对较少的时间来访问数据库,如果一个作业运行两次,它就不是世界末日,所以我可能会接受一小部分作业运行的概率,以提高代码的简单性.

做这个的最好方式是什么?我正在为我的数据层使用linq-to-sql,但我认为我必须为此调入t-sql.

sql sql-server concurrency linq-to-sql

6
推荐指数
2
解决办法
607
查看次数

为什么"this"的值会发生变化.

我正在学习javascript,我遇到了一个疑问.为什么在第一个示例中未定义"this"的值,但在第二个示例中正确打印出来.

例1:

var myNamespace = {
    myObject: {
        sayHello: function() {
            console.log( "name is " + this.myName );
        },
        myName: "john"
    }
};

var hello = myNamespace.myObject.sayHello;

hello(); // "name is undefined"
Run Code Online (Sandbox Code Playgroud)

例2:

var myNamespace = {
    myObject: {
        sayHello: function() {
            console.log( "Hi! My name is " + this.myName );
        },
        myName: "Rebecca"
    }
};

var obj = myNamespace.myObject;

obj.sayHello();//"Hi! My name is Rebecca"
Run Code Online (Sandbox Code Playgroud)

为什么"this"的值在函数内发生变化.我错过了什么概念?

javascript this

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

如何将msmq消息移动到子队列

使用这些System.Messaging类,如何将msmq消息(在本例中为有害消息)移动到子队列?

看起来这应该很简单,但我无法弄明白.

c# msmq system.messaging

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

SQL查询信息*不是*在数据库中

我有一个很大的电子邮件地址列表,我需要确定哪些不在我的数据库中.我可以构建一个能告诉我这些信息的查询吗?

我正在使用SQL Server 2000,如果它需要非标准扩展

sql sql-server

3
推荐指数
2
解决办法
940
查看次数

Haskell脚本耗尽空间

我正在使用项目Euler来自学Haskell,而且我在编写有关我的代码是如何被haskell执行时遇到了一些麻烦.第二个问题让我计算所有偶数斐波那契数的总和高达400万.我的脚本看起来像这样:

fibs :: [Integer]
fibs =  1 : 2 : [ a+b | (a,b) <- zip fibs (tail fibs)]

evens  :: Integer -> Integer -> Integer
evens x sum | (even x)   = x + sum
            | otherwise  = sum

main = do
  print (foldr evens 0 (take 4000000 fibs))
Run Code Online (Sandbox Code Playgroud)

Hugs给出错误"垃圾收集无法回收足够的空间",我认为这意味着列表条目不会因为它们被消耗而被释放foldr.

我需要做些什么来解决这个问题?我尝试编写一个使用累加器的尾递归(我认为)版本,但也无法使用它.

haskell space lazy-evaluation

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

在nHibernate中调试"字符串或二进制数据将被截断"错误

我在我的应用程序中调试间歇性截断错误.我的日志中的错误如下所示:

System.Data.SqlClient.SqlException: String or binary data would be truncated.
The statement has been terminated. Generated: Tue, 02 Nov 2010 03:55:18 GMT

NHibernate.Exceptions.GenericADOException: could not insert:
[DataModel.Product][SQL: INSERT INTO [Product] (Fields) VALUES (?, ?,...);
select SCOPE_IDENTITY()] ---> 
System.Data.SqlClient.SqlException: String or binary data would be truncated. 
The statement has been terminated.    
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
Run Code Online (Sandbox Code Playgroud)

请注意,错误不会为抛出错误的sql提供参数值,只有占位符:(?, ?,...).有没有办法从nHibernate获取这些?像这样的东西:

try {
    ...
    Session.Flush(); // throws
}
catch (GenericADOException ex) {

    // want to get the bad parameter values, 
    // so I …
Run Code Online (Sandbox Code Playgroud)

c# database nhibernate validation

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

检查javascript数组是否包含使用underscorejs的值

我有一系列像这样的汽车:

[{ name:"Toyota Minivan", id:"506" }, { name:"Honda Civic", id:"619" }]
Run Code Online (Sandbox Code Playgroud)

我试图检查数组是否包含某个id.

我试过了

var x =!!_.where(cars, {id:'506'}).length;
Run Code Online (Sandbox Code Playgroud)

如果数组包含id,则期望它返回true,但它总是返回false.

我在这是要干嘛 ?

顺便说一句,如果有更好的方法,我不必使用underscore.js.

谢谢托马斯

javascript arrays underscore.js

2
推荐指数
2
解决办法
3万
查看次数