问题列表 - 第2766页

如何解析DWR返回的对象数组?

DWR非常直接地处理基元列表.我无法找到DWR方法调用返回的对象数组是否表示JSON对象.有线索吗?或者我是否必须将表示对象数组的JSON字符串返回给浏​​览器?

java ajax dwr

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

如何从varchar到datetime的转换确定性?

这个问题的传统中,根据文档,如何使这个函数具有确定性:

ALTER FUNCTION [udf_DateTimeFromDataDtID]
(
    @DATA_DT_ID int -- In form YYYYMMDD
)
RETURNS datetime
WITH SCHEMABINDING
AS
BEGIN
    RETURN CONVERT(datetime, CONVERT(varchar, @DATA_DT_ID))
END
Run Code Online (Sandbox Code Playgroud)

或者这个(因为字符串/日期文字 - 是的,我也试过'1900-01-01'):

ALTER FUNCTION udf_CappedDate
(
    @DateTimeIn datetime
)
RETURNS datetime
WITH SCHEMABINDING
AS
BEGIN
    IF @DateTimeIn < '1/1/1900'
        RETURN '1/1/1900'
    ELSE IF @DateTimeIn > '1/1/2100'
        RETURN '1/1/2100'

    RETURN @DateTimeIn
END
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2005 deterministic user-defined-functions

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

指示一个类是否在Perl中实现接口有多重要?

我和朋友一直在讨论代码风格问题.我们有一系列通过命名子例程返回特定类型值来实现接口的包.例如:

package Foo::Type::Bar;
sub generate_foo {
    # about 5-100 lines of code
    return stuff here;
}
Run Code Online (Sandbox Code Playgroud)

所以你可以去:

my $bar_foo = Foo::Type::Bar->generate_foo;
my $baz_foo = Foo::Type::Baz->generate_foo;
Run Code Online (Sandbox Code Playgroud)

我们有很多这些,都在同一Foo::Type::*层次结构下.

我认为包应该清楚地表明它们实现了foo_generate接口,例如:

package Foo::Type::Bar;
use base 'Foo::Type';
sub generate_foo {
    ...
    return stuff here;
}
Run Code Online (Sandbox Code Playgroud)

我认为这是一种很好的代码风格,对于其他编写代码的程序员来说更加清晰和干净.它还允许您检查Foo::Type::Bar->isa('Foo::Type')它是否实现了接口(子系统的其他部分完全是OO).

我的朋友不同意.他提出的一些论点是:

  • Foo::Type::* 包清楚地命名,并且仅在内部项目中使用,因此不存在想知道给定包是否实现接口的问题
  • 这些软件包通常很小,是独立子系统的一部分,他们觉得像批处理文件或conf文件,而不是沉重的Perl OO代码
  • Perl通过继承表达实现,这可能很复杂或有问题,特别是当一个人获得多重继承时
  • 添加Foo::Type超类不会添加任何值,因为它实际上是一个空包,仅用于启用->isa查找
  • 以编程方式指示接口实现是个人代码风格的问题

我们中的一个人是"正确的"吗?你会怎么做?

编辑:在示例中,将Foo :: Generator重命名为Foo :: Type

oop perl coding-style

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

我可以让GCC警告将过多的类型传递给函数吗?

以下是一些明显有缺陷的代码,我认为编译器应该发出诊断信息.但是,即使有我能想到的所有警告选项,它既不会gccg++不会:-pedantic -Wall -Wextra

#include <stdio.h>

short f(short x)
{
    return x;
}

int main()
{
    long x = 0x10000007;   /* bigger than short */
    printf("%d\n", f(x));  /* hoping for a warning here */
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法制作gccg++警告这个?另外,您是否有另一个编译器在默认情况下或在相当常见的额外警告配置中对此进行警告?

注意:我正在使用GCC(C和C++编译器)版本4.2.4.

编辑:我刚刚找到gcc -Wconversion了诀窍,但是相同的选项g++没有,我真的在这里使用C++,所以我需要一个解决方案g++(现在我想知道为什么-Wconversion似乎不是这样).

编辑:http://gcc.gnu.org/bugzilla/show_bug.cgi? id = 34389建议这可能会修复g++ 4.4...也许?我还不清楚它是否是同一个问题和/或修复是否真的出现在那个版本中.也许有4.3或4.4的人可以试试我的测试用例.

c c++ gcc g++ compiler-warnings

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

如何更改哈希键的大小写?

我正在编写一个可能被用户修改的脚本.目前我正在将配置设置存储在脚本中.它以散列哈希的形式存在.

我想防止人们在哈希键中意外使用小写字符,因为这会破坏我的脚本.

检查哈希键并且仅对具有小写字符的任何键发出警告将是简单的,但我宁愿自动修复区分大小写.

换句话说,我想将顶级哈希中的所有哈希键转换为大写.

perl hash

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

忽略mercurial中的文件夹

警告: 我尝试了这里列出的所有可能性:如何忽略Mercurial文件夹下的所有内容.
没有人按我的意愿行事.

我想忽略文件夹下的所有内容test.但不要忽视srcProject\test\TestManager

我试试

syntax: glob
test/**
Run Code Online (Sandbox Code Playgroud)

而忽略testsrcProject\test\TestManager

附:

syntax: regexp
^/test/
Run Code Online (Sandbox Code Playgroud)

这是同一件事.

还有:

syntax: regexp
test\\*
Run Code Online (Sandbox Code Playgroud)

我在Windows中安装了带有Mercurial-626cb86a6523 + tortoisehg,Python-2.5.1,PyGTK-2.10.6,GTK-2.10.11的TortoiseHG 0.4rc2

regex mercurial ignore-files hgignore

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

如何打破BoundField的HeaderText

在表格的td中的HTML中,您可以通过<BR>在单词之间使用来中断文本.这也适用于TemplateItem的HeaderText,但不适用于BoundField的HeaderText.如何拆分BoundField的Header文本.

c# gridview headertext boundfield

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

Post Build退出代码1

我有一个带有post build事件的项目:

copy $(ProjectDir)DbVerse\Lunaverse.DbVerse.*.exe  $(TargetDir)
Run Code Online (Sandbox Code Playgroud)

它每次都在我的机器上工作正常.我有一个新的开发人员总是得到"退出代码1"错误.我让她在DOS提示符下运行相同的命令,它工作正常.可能是什么导致了这个?有没有办法解决真正的错误?

我们都使用Visual Studio 2008.

visual-studio-2008 post-build

104
推荐指数
8
解决办法
15万
查看次数

在WCF服务中传递接口?

我正在尝试使用WCF服务,并且遇到了传递接口的问题.

这有效:

[ServiceContract]
public interface IHomeService
{
    [OperationContract]
    string GetString();
}
Run Code Online (Sandbox Code Playgroud)

但这不是:

[ServiceContract]
public interface IHomeService
{
    [OperationContract]
    IDevice GetInterface();
}
Run Code Online (Sandbox Code Playgroud)

当我尝试编译客户端时,它在GetInterface方法上失败.我得到一个异常,说它无法将Object转换为IDevice.

在客户端上,IHomeService类正确地使用字符串实现GetString,因为它是返回类型,但GetInterface具有返回类型的对象.为什么不是IDevice?

.net c# wcf

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

确定当前用户是域用户还是本地用户?

有没有办法确定(最好是.NET)当前用户是域用户帐户还是本地用户帐户?

提前 - 我不知道它正在运行的域名,所以我不能只查找DOMAIN\Username v COMPUTER\Username.

部分答案可能是从代码中确定DOMAIN或COMPUTER名称.

[编辑]扩展Asher的答案代码片段

private bool isCurrentUserLocalUser()
{
    return Environment.MachineName == Environment.UserDomainName;
}
Run Code Online (Sandbox Code Playgroud)

.net

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