问题列表 - 第17688页

是否有一个C#等同于Ruby的`respond_to?`?

我正在编写一个简单的包装器来"躲避" dynamic一个已知接口的对象:

interface IFoo { string Bar(int fred); }

class DuckFoo : IFoo
{
    private readonly dynamic duck;

    public DuckFoo(dynamic duck)
    {
        this.duck = duck;
    }

    public string Bar(int fred)
    {
        return duck.Bar(fred);
    }
}
Run Code Online (Sandbox Code Playgroud)

如果dynamic对象可以响应Bar签名,这可以正常工作.但是,如果它不能只在我打电话时失败Bar.我希望它能否更快地失败,即在构造DuckFoo包装器时使用参数验证.像这样的东西:

public DuckFoo(dynamic duck)
{
    if(/* duck has no matching Bar method */)
        throw new ArgumentException("duck", "Bad dynamic object");
    this.duck = duck;
}
Run Code Online (Sandbox Code Playgroud)

在Ruby中,有一种respond_to?方法可用于测试对象是否"具有"某种方法.有没有办法在C#4中使用动态对象进行测试?

(我知道即使使用此检查,Bar调用也可能在以后失败,因为它的动态特性duck让它稍后停止响应方法.)

c# dynamic

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

C# - 从现有词典创建列表

我有一个Dictionary<>包含字符的集合.该集合具有多个线程不断添加和删除的项目.List<>使用字典初始化新集合需要锁吗?

示例代码:

List<Character> charsToUpdate = new List<Character>(this.manager.characters.Values);
Run Code Online (Sandbox Code Playgroud)

c# synchronization dictionary list

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

Perl中的@ {$ list_ref}和@ $ list_ref是否相同?

我是新来的Perl和很好奇是否@{$list_ref}@$list_ref是完全等价的.

它们似乎是可以互换的,但我很紧张,有一些微妙的事情可能会让我失踪.

perl dereference

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

Google Earth API与Google Earth COM API

我想在桌面应用程序中使用Google地球.

我的问题是,您认为谷歌提供的这两个API中哪一个具有更多功能和/或最佳支持?

非常感谢你

desktop-application google-earth google-earth-plugin

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

如何在Perl应用程序中用'confess'替换所有'die'?

我正在使用大型Perl应用程序,并且每次调用"die"时都希望获得堆栈跟踪.我知道Carp模块,但我不想用'confess'搜索/替换'die'的每个实例.另外,我想要Perl模块或Perl解释器本身的错误的完整堆栈跟踪,显然我不能改变使用Carp的那些.

那么,有没有办法在运行时修改'die'函数,使其表现得像'confess'?或者,是否有一个Perl解释器设置会从'die'中抛出完整的堆栈跟踪?

perl carp

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

当Javascript被禁用时,AJAX应用程序应该如何表现 - 通常的做法?

我正在开发非常基本的Web应用程序,这主要是因为我可以在途中学习jQuery/ajax/php(并且有一些乐趣).我希望尽可能让用户可以访问它,因此它应该禁用Javascript,验证AAA以及所有这些.随着JS被禁用,当然没有所有的花里胡哨,但仍然应该做的工作.

我想充分利用Ajax,但我不完全理解当JS关闭时应该如何应对.

因此,假设JS已打开,用户提交表单,单击提交按钮并通过ajax,数据将提交到register.php(register.php在表单操作属性中指定).register.php返回数据,jQuery显示相应的消息.全部没有重新加载页面.

现在,如果JS被禁用,向register.php提交表单将无济于事.

我理解它的方式,解决方案是为JS启用一个PHP脚本,其他为JS禁用.因此,默认情况下,表单将具有action属性nonjs_register.php,如果启用了JS,则会强制将表单提交到js_register.php而不是默认nonjs_register.php.我可以想象,为每个用户与应用程序的交互创建两个脚本页面会非常繁琐,但这是我现在能想到的唯一方法.

我希望所有这些都有意义,但如果我的解释不太清楚,请告诉我.现在,如果有人能够向我解释什么是处理那种很好的问题的常见做法.

javascript ajax

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

Uploadify:显示来自HTTP响应的错误消息

如果服务器在使用Uploadify上传文件时返回错误(HTTP响应代码!= 200),则上传的文件将显示红色背景,并显示如下消息:

file.jpg (52.78KB) - HTTP Error
Run Code Online (Sandbox Code Playgroud)

表示存在HTTP错误.但这对用户来说并不是很有用.如何让它显示更详细的错误消息?喜欢:'不是有效图像'或'配额满'?

我在考虑在HTTP响应体中传递这些消息,但是Uploadify没有接收它们.有没有已知的方法将错误消息传递回Uploadify?

uploadify

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

Notepad ++:自定义语法突出显示.txt文件

我保留了我认为在我的计算机上作为文本文件有用的代码示例.我将它们存储为txt文件而不是它们所用的语言,因此它们将在Notepad ++而不是编辑器中打开(即我不希望我的c ++示例在IDE中打开,只是在记事本中打开).

有没有办法让Notepad ++通过阅读文本文件中的特殊代码对文本文件应用适当的语法高亮?

例如,如果我有一些sql,文本文件的第一行可以这样读:

##Language=SQL 

... my sql code properly highlighted as sql ...
Run Code Online (Sandbox Code Playgroud)

提前致谢.我意识到我可以在打开文件后选择语言(即语言> SQL),但如果能自动完成它会更方便.

syntax-highlighting notepad++

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

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

Tweetie 2/Facebook在UITableview中滑动手势?

嘿大家,我只是想知道是否有人知道如何创建类似于Tweetie 2.0应用程序中的UITableviewCell滑动效果(请参阅视频:Tweetie 2.0)或Facebook 3.0应用程序(当按下旁边的蓝色"+"时状态).

我需要做的是让细胞滑动以响应您的滑动并显示背景视图.

任何帮助,将不胜感激!

iphone uitableview

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