我有一个图形类来检测我正在写的一些业务逻辑中的循环依赖.我的图形类构建了知道与其他节点的关系的节点.
我有nodeList作为列表(对象)每个都有一个List(字符串)
我在想下面的代码行会产生正确的排序.我想错了.
nodeList.OrderByDescending(Function(x) x.Count)
Run Code Online (Sandbox Code Playgroud)
我想通过List(of String).Count按降序重新排序我的nodeList.
my List(of Object)
(0) | Count = 3
(1) | Count = 5
(2) | Count = 2
My desired output List(of Object)
(0) | Count = 5
(1) | Count = 3
(2) | Count = 2
Run Code Online (Sandbox Code Playgroud) 我注意到一个奇怪的Javascript错误,它似乎只发生在Internet Explorer 8上.基本上,在IE-8上,如果你有一个事件处理函数捕获闭包中的事件对象,事件"type"属性似乎变得无效从关闭内部.
这是一个简单的代码片段,可以重现错误:
<html>
<head>
<script type="text/javascript">
function handleClickEvent(ev)
{
ev = (ev || window.event);
alert(ev.type);
window.setTimeout(function() {
alert(ev.type); // Causes error on IE-8
}, 20);
}
function foo()
{
var query = document.getElementById("query");
query.onclick = handleClickEvent;
}
</script>
</head>
<body>
<input id="query" type="submit" />
<script type="text/javascript">
foo();
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
所以基本上,这里发生的是在handleClickEvent函数中,我们有事件对象ev.我们打电话alert(ev.type),我们看到事件类型是"点击".到现在为止还挺好.但是当我们在一个闭包中捕获事件对象,然后alert(ev.type)再从闭包内再次调用时,现在突然出现Internet Explorer 8错误,因为表达式说"成员未找到" ev.type.type在我们捕获闭包中的事件对象之后,似乎事件对象的属性神秘地消失了.
我在Firefox,Safari和Chrome上测试了此代码段,但没有一个报告错误情况.但是在IE-8中,事件对象在关闭时被捕获后似乎变得无效.
问题:为什么在IE-8中发生这种情况,是否有解决方法?
目前,我正在搜索我的列表,以查找与地址匹配的客户.我需要匹配地址和城市.如何重写我的lambda Expression以匹配这两个标准?
CustomerList.FindAll(Function(c)c.Address = addressToMatch)
我有这样的交易,我有几个问题.
如果我在"Master"中运行它,它应该出错,因为表'Year'不存在我没有看到事务回滚.SQL只会抛出表/列不存在的错误.
如果我针对表存在的数据库运行它并因为外键约束而使其出错,那么我确实看到了事务回滚.
为什么我得不到相同的结果.
BEGIN TRY
BEGIN TRANSACTION
INSERT INTO Year (YearId, FiscalYear)
VALUES (NewId(), 2014)
COMMIT
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK
PRINT 'ERROR'
DECLARE @ErrMsg nvarchar(4000)
, @ErrSeverity int
SELECT @ErrMsg = ERROR_MESSAGE(),
@ErrSeverity = ERROR_SEVERITY()
RAISERROR(@ErrMsg, @ErrSeverity, 1)
END CATCH
GO
Run Code Online (Sandbox Code Playgroud)