问题列表 - 第6616页

C#:在哪些类中使用了ICommandExecutor接口?

我在.net中找到了ICommandExecutor接口,但无法找到实现它的类.我知道有一些xaml相关的东西在哪里使用.但是winforms还有什么东西吗?

c# command winforms

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

与C#中的NULL混淆

我总是对表达空值的不同方式感到困惑.有空引用类型(又名"null").然后我看到在我的应用程序中,开发人员使用MinValue来表示空值.例如:Double.MinValue或DateTime.MinValue,但它们使用"null"的字符串除外

然后是System.DBNull(和System.DBNull.Value - 不知道什么时候使用).为了增加混乱,也有System.NullableSystem.Nullable<T>命名空间.

有人能帮助我清除这种无效的混淆吗?

谢谢

.net c# .net-2.0

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

"简单"网站不选择基于云的托管的原因是什么?

我最近通过阅读有关云托管的内容进行了一些追赶.

对于与StackOverflow(Windows堆栈,访问量相同)具有相同特征的客户端,我需要设置托管环境.Stackoverflow从租赁变为购买.

问题是为什么他们不选择云托管?

由于Stackoverflow不使用需要在专用服务器上运行的任何奇怪的东西,并且据称云托管是''解决方案,为什么不使用它?

通过获得这个问题的答案,我希望能够自己做出加权决定.

cloud web-hosting

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

获取当前时间的单元测试代码

为当前时间的代码编写单元测试的最佳方法是什么?例如,某些对象可能仅在工作日创建,其他对象在检查执行某些操作的权限时会考虑当前时间等.

我想我应该嘲笑Date.today和Time.now.这是正确的方法吗?

更新:两种解决方案(a)Time.is和(b)Time.stubs(:now).returns(t)工作.(a)是非常好的方法,但(b)解决方案将与其他测试代码更加一致.

在这个问题上,作者要求提供一般解决方案.对于Ruby,在我的选项中,上述两个解决方案更简单,因此比提取获取当前日期/时间的代码更好.

顺便说一句,我建议使用慢性来获得所需的时间,例如

require 'Chronic'    
mon = Chronic.parse("next week monday")
Time.stubs(:now).returns(mon)
Run Code Online (Sandbox Code Playgroud)

ruby datetime unit-testing ruby-on-rails

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

如何在运行时将ASP.Net控件移动到Web窗体上的不同位置?

是否有一种"移动"控件的可接受方式.

我的客户希望在页面上的几个不同位置之一放置一定量的标记(表示一些视觉元素).位置不同,我不能影响CSS的变化(通过浮动它或其他东西).

我考虑将控件置于多个位置,将Visible设置为"false",然后在该特定页面所需的位置显示该控件.

但是,这个控件的代码并不简单 - 例如,有几个模板部分.不得不在多个地方欺骗它会变得笨拙.此外,出于同样的原因,我不想严格地从代码隐藏中使用此控件.

所以,我想把它放在Web表单的一个地方,根据我想要的地方移动它.我可以将占位符放在不同的位置,将控件放在一个位置,然后将其移除并添加到正确的位置?我怀疑这会奏效.

有人有更好的主意吗?这是最好的做法吗?

asp.net controls

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

从父文件夹导入模块

我正在运行Python 2.5.

这是我的文件夹树:

ptdraft/
  nib.py
  simulations/
    life/
      life.py
Run Code Online (Sandbox Code Playgroud)

(我也在__init__.py每个文件夹中,为了便于阅读,这里省略了)

如何nib从模块内导入life模块?我希望有可能不用修补sys.path.

注意:正在运行的主模块位于该ptdraft文件夹中.

python directory module path python-import

552
推荐指数
21
解决办法
59万
查看次数

你如何组织Javascript verboseness?

我正在编写一个GM脚本,有一件事我意识到我反复做的是一遍又一遍地做同样的代码.具体来说,是样式属性.

function createButton() {
    var a = document.createElement('a');
    a.href = '#';
    a.innerHTML = 'Print Topic';
    a.style.position = 'absolute';
    a.style.right = '3em';
    a.style.top = '6em';
    a.style.fontFamily = 'Arial,Helvetica,sans-serif';
    a.style.fontWeight = 'bold';
    a.style.fontSize = '125%';
    a.style.background = '#777777 none repeat scroll 0 0';
    a.style.color = 'white';
    a.style.padding = '6px 12px';
    document.body.insertBefore(a, document.body.lastChild);
}
Run Code Online (Sandbox Code Playgroud)

正如你在我的示例代码中看到的那样,我反复写了很多次.你有技术可以避免这种混乱吗?只是为了优雅.

谢谢 -

伙计们,这是减少的代码:

function createButton() {
    var a = document.createElement('a');
    var css = document.createElement('style');
    css.type = 'text/css';
    css.innerHTML = '#prt { position:absolute; right:3em; top: 6em; font-family: Arial,Helvetica,sans-serif; font-weight:bold; …
Run Code Online (Sandbox Code Playgroud)

javascript greasemonkey

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

使用新委托实例取消注册事件

EventHandler a = new EventHandler(control_RegionChanged);
EventHandler b = new EventHandler(control_RegionChanged);

 if (a == b)
 {
     Console.WriteLine("Same!");
 }
 else
 {
     Console.WriteLine(a.GetHashCode() + " " + b.GetHashCode());
 }
Run Code Online (Sandbox Code Playgroud)

这会写入Same!控制台.

control.RegionChanged += new EventHandler(control_RegionChanged);
control.RegionChanged -= new EventHandler(control_RegionChanged);
Run Code Online (Sandbox Code Playgroud)

执行此代码后,是否EventHandler未注册?

c# events

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

操作系统检测makefile

我经常在几台不同的计算机和几种不同的操作系统上工作,这些操作系统是Mac OS X,Linux或Solaris.对于我正在进行的项目,我从远程git存储库中提取代码.

无论我在哪个终端,我都希望能够处理我的项目.到目前为止,我已经找到了通过每次切换计算机时更改makefile来绕过操作系统更改的方法.然而,这是乏味的,并引起一堆头痛.

如何修改我的makefile,以便它检测我正在使用哪个操作系统并相应地修改语法?

这是makefile:

cc = gcc -g
CC = g++ -g
yacc=$(YACC)
lex=$(FLEX)

all: assembler

assembler: y.tab.o lex.yy.o
        $(CC) -o assembler y.tab.o lex.yy.o -ll -l y

assembler.o: assembler.c
        $(cc) -o assembler.o assembler.c

y.tab.o: assem.y
        $(yacc) -d assem.y
        $(CC) -c y.tab.c

lex.yy.o: assem.l
        $(lex) assem.l
        $(cc) -c lex.yy.c

clean:
        rm -f lex.yy.c y.tab.c y.tab.h assembler *.o *.tmp *.debug *.acts
Run Code Online (Sandbox Code Playgroud)

makefile os-agnostic os-detection

237
推荐指数
10
解决办法
15万
查看次数

C#中最快的方法是在一个包含20,000多个文件的目录中查找文件

我有一个每晚都要运行的工作,从根目录下有超过20,000个子文件夹的目录中提取xml文件.这是结构的样子:

rootFolder/someFolder/someSubFolder/xml/myFile.xml
rootFolder/someFolder/someSubFolder1/xml/myFile1.xml
rootFolder/someFolder/someSubFolderN/xml/myFile2.xml
rootFolder/someFolder1
rootFolder/someFolderN
Run Code Online (Sandbox Code Playgroud)

所以看看上面的结构,结构总是一样的 - 一个根文件夹,然后是两个子文件夹,然后是一个xml目录,然后是xml文件.我只知道rootFolder和xml目录的名称.

下面的代码遍历所有目录,速度极慢.有关如何优化搜索的任何建议,尤其是目录结构是否已知?

string[] files = Directory.GetFiles(@"\\somenetworkpath\rootFolder", "*.xml", SearchOption.AllDirectories);
Run Code Online (Sandbox Code Playgroud)

.net c# file-io

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