问题列表 - 第2098页

异常处理架构

有没有人有异常处理的最佳实践?

在网上搜索时,我在代码级别找到了很多最佳实践(不要抓住一般异常,不要重新抛出新的异常等).我所寻找的是更高级别的最佳实践,例如:

  • 在应用程序中捕获ui级别的异常.
  • 记录尽可能详细的信息,显示友好的错误消息
  • 更像SOA的应用程序区分功能异常(您要求特定客户并希望找到一个,但找不到)和技术异常(数据库脱机)
  • 不要将异常用于功能异常
  • 区分致命和非致命异常
  • 区分使重试成为可能或使重试完全无用的异常
  • 提醒维护人员的模式

非常感谢任何想法和帮助,谢谢.

architecture exception

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

在页面呈现时显示Ajax Loader

这可能是一个简单的问题,但是如何在构建页面时最好地使用ASP.NET中的AJAX加载器来提供加载对话框?

我目前有一个UpdatePanel,它带有一个关联的UpdateProgressPanel,它包含ProgressTemplate中的加载消息和gif.

目前我有一个onLoad()的页面并获取业务实体然后显示它们.虽然它这样做我想显示一个AJAX加载器.

在页面加载中没有任何内容并且在onLoadComplete或unLoad()上触发隐藏按钮会更好吗,然后等待按钮单击方法完成显示UpdateProgressPanel?

vb.net asp.net ajax page-lifecycle

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

如何使用open-uri发出POST请求?

是否可以使用open-uri从Ruby发出POST请求?

ruby open-uri

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

禁用浏览器垂直和水平滚动条

是否可以使用jQuery或javascript禁用浏览器垂直和水平滚动条?

javascript jquery

112
推荐指数
8
解决办法
26万
查看次数

上下文菜单的捕获窗口(Alt-Print屏幕)

众所周知,有时开发人员必须记录内容.或者捕获一些用于提交错误报告的内容.

我的问题是在MS Windows中.

我正在尝试捕获应用程序的几个区域的上下文菜单(右键单击项目后出现的弹出菜单).按下Alt以启动Alt+ PrintScreen进程将关闭上下文菜单.

(只有按下有PrintScreen帮助,但每次删除非窗口区域都很痛苦).

奖励:要捕获菜单,Alt还要关闭菜单.但是,如果您首先使用该Alt键打开菜单,它的工作原理如下:

  1. Alt+ F(用于打开"文件"菜单),不要释放Alt
  2. PrintScreen
  3. 田田!

windows bug-tracking screenshot screen-capture printscreen

34
推荐指数
4
解决办法
4万
查看次数

如何增加ruby应用程序的堆栈大小.递归应用程序获取:堆栈级别太深(SystemStackError)

在stackoverflow.com上发布堆栈溢出问题,有多么有趣:-)

我正在运行一些递归的Ruby代码,我得到: "Stack level too deep (SystemStackError)"

(我很确定代码是有效的,我不是在无限的递归死亡螺旋中,但这不是重点)

有没有改变我的Ruby应用程序允许的堆栈深度/大小?

如果这是Ruby中的限制,我不太明白,因为错误说"堆栈级别",这让我觉得Ruby以某种方式计算堆栈的"级别",或者它只是意味着堆栈已满.

我试过在Vista和Ubuntu下运行这个程序,结果相同.在Ubuntu下我尝试用'ulimit -s'将堆栈大小从8192更改为16000,但这并没有改变任何东西.

编辑:感谢您的反馈.
我确实意识到使用递归函数可能不是最强大的方法.但这也不是重点.我只是想知道是否有办法增加堆栈大小..期间.正如我所提到的,我确实尝试在运行ruby脚本之前运行ulimit -s 16000 ..没有任何改进..我使用它错了吗?

Edit2:事实上我在代码的边缘情况下有一个无限递归.
当您收到"Stack level too deep"错误时,截断的ruby堆栈跟踪有点误导.
当具有涉及多个函数的递归行为时,您会得到递归数量远低于其实际值的印象.在这个示例中,可能会在超过190次调用后崩溃,但实际上大约有15000次调用

tst.rb:8:in `p': stack level too deep (SystemStackError)
        from tst.rb:8:in `bar'
        from tst.rb:12:in `bar'
        from tst.rb:19:in `foo'
        from tst.rb:10:in `bar'
        from tst.rb:19:in `foo'
        from tst.rb:10:in `bar'
        from tst.rb:19:in `foo'
        from tst.rb:10:in `bar'
         ... 190 levels...
        from tst.rb:19:in `foo'
        from tst.rb:10:in `bar'
        from tst.rb:19:in `foo'
        from tst.rb:22
Run Code Online (Sandbox Code Playgroud)

-Andreas

ruby recursion

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

如何使用Perl的Net :: LDAP进行复杂查询?

我在针对公司LDAP服务器运行复杂查询时遇到问题.我正在使用以下Perl脚本:

use Data::Dumper;
use Net::LDAP;

die "Can't connect to LDAP-Server: $@\n" 
    unless $ldap = Net::LDAP->new( 'xLDAPx' );


foreach my $filter ( 'ou=Personal', 'ou=BAR', 'ou=Personal,ou=BAR', 'ou=Personal,ou=FOO,o=FOO,dc=foo,dc=com' )
{ 
    $mesg = $ldap->search( base => "o=FOO,dc=foo,dc=com", filter => $filter );
    print Dumper($mesg), "\n\n";
}
Run Code Online (Sandbox Code Playgroud)

虽然前两个过滤器起作用(如返回预期值),但最后一个过滤器不起作用.它返回一个空数组.让我感到困惑的是,当我使用像Softerra LDAP Browser这样的工具时,完全相同的查询字符串可以正常工作.

我也尝试过使用PHP ldap_search&co 的相同查询,但无济于事.

有人可以对此有所了解吗?

谢谢阅读

holli

编辑:这是服务器的结构:

Server
    ou=FOO
        ou=...
        ou=Personal
            uid=something
Run Code Online (Sandbox Code Playgroud)

我需要一份uid列表.

perl ldap

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

如何在perfmon中重置Performance对象?

当我启动perfmon并尝试添加计数器时,显示的性能对象都是数字.如何重置这些Performance对象?

windows perfmon

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

为什么Date.parse不返回Date对象?

today1 = new Date();
today2 = Date.parse("2008-28-10");
Run Code Online (Sandbox Code Playgroud)

要比较这些的时间(毫秒)值,我必须执行以下操作,因为today2只是一个数字.

if (today1.getTime() == today2)
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

javascript

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

表NewRow()导致内存泄漏

在调查内存泄漏的同时,我发现它是由多次在循环内的Table上调用NewRow()引起的.但是,创建的DataRow从未添加到Table Rows集合中,并且Table Rows Count从未超过零.

我的问题是,为什么每次调用NewRow时都会占用更多内存,即使新创建的DataRow永远不会被添加到Rows集合中,而从NewRow返回的DataRow总是被分配给同一个局部变量(从而显然丢弃了最后一个新行).

请忽略代码为什么创建没有添加到表中的DataRows的问题!

.net datatable memory-leaks

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