小编Rom*_*iko的帖子

测试相等于默认值

以下内容无法编译:

public void MyMethod<T>(T value)
{
    if (value == default(T))
    {
        // do stuff
    }
}
Run Code Online (Sandbox Code Playgroud)

错误: Operator '==' cannot be applied to operands of type 'T' and 'T'

我不能使用value == null因为T可能是一个结构.
我不能用value.Equals(default(T))因为value可能null.
测试相等于默认值的正确方法是什么?

c# generics equality

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

通过npm自动运行gulp任务

我通常通过npm运行gulp,例如在我的package.json中

"scripts": {
    "test": "gulp test",
    "minify": "gulp minify"
}
Run Code Online (Sandbox Code Playgroud)

然后我就可以运行命令了

npm run minify
Run Code Online (Sandbox Code Playgroud)

哪个没关系,但每次我在gulpfile中都有新任务时,我需要将它们添加到scripts部分下的package.json中,有没有更好的方法呢?

原因:我只在全局安装npm,path所以所有其他模块都不会污染我的path,所以我需要通过npm脚本运行它们

node.js npm gulp

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

即使从HTML/JS或XAML创建控件,Metro控件是否在低级别重用相同的代码路径?

假设我创建了两个metro应用程序,

一个有HTML视图的

<input type="text"/>
Run Code Online (Sandbox Code Playgroud)

另一个基于XAML的视图

<TextBox/>
Run Code Online (Sandbox Code Playgroud)

底层实现是否映射到相同的代码以呈现两个控件?他们会有100%完全相同的行为吗?

html xaml controls windows-8 windows-runtime

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

解析器的性能:PEG与LALR(1)或LL(k)

我已经看到一些声称优化的PEG解析器通常不会比优化的LALR(1)或LL(k)解析器更快.(当然,解析的性能取决于特定的语法.)

我想知道PEG解析器是否存在任何特定限制,无论是一般有效还是PEG语法的某些子集都会使它们在性能方面低于LALR(1)或LL(k).

特别是,我对解析器生成器很感兴趣,但是假设在任何特定情况下都可以调整它们的输出以提高性能.我还假设解析器已经过优化,如果需要提高性能,可以稍微调整一下特定的语法.

parsing lalr peg parser-generator ll-grammar

12
推荐指数
2
解决办法
4472
查看次数

TortoiseHG:无法部分提交合并

我试图在Mercurial中合并两个头.合并后,我没有提交并做了一些更改.然后我尝试提交并收到以下消息:

abort:无法部分提交合并(不指定文件或模式)

我使用TortoiseHG作为视觉外壳,使用Beyond Compare进行比较和合并.我对他们所有人都相对较新.

我该怎么做才能成功完成提交?

merge mercurial dvcs tortoisehg

11
推荐指数
3
解决办法
7747
查看次数

如何获取ObjectDataSource的行数

大家好

如何获得ObjectDataSouce的行数?

我使用ObjectDataSource和DataList.我希望在ObjectDataSource返回某些行时向用户显示一些东西,例如在标签中.其中一种情况是没有记录.

谢谢 .

c# objectdatasource rowcount

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

在控制台应用程序C#中实现单例的最佳方法?

我有一个基于服务器的控制台应用程序.我只希望为特定服务器一次运行一个实例(这与可能正在运行它的用户无关).

我需要添加一个检查以确保它的1个实例正在运行,我已经可以通过检查服务器上的运行进程来做到这一点,但这是最佳做法吗?

由于我一直在寻找改进编码风格和保持最新的方法,最近有更好的方法吗?如果您正在考虑 - "如果没有破坏就不要修复它",也许您是对的,但我想更多地利用内置功能的框架.

我使用的是.net v3.5,这是一个控制台应用程序.

提前致谢

c# singleton .net-3.5

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

拥有无用的代码是否可以接受?

我看到一些程序员添加的代码毕竟没有做任何有用的事情.例如(C#):

[Serializable]
class Foo {
    // ...
    string SerializeMe() {
        return new XmlSerializer(typeof(this)).Serialize(this).ToString(); // serialize to xml (syntax wrong, not important here)
    }
}
Run Code Online (Sandbox Code Playgroud)

该类被标记为Serializable,但它被序列化的唯一方法是通过XmlSerialization,它根本不需要class属性.

我个人讨厌这种无用的代码,但我经常看到它,我很好奇其他人对它的看法.毕竟这不是一个严重的缺陷吗?这是行业中的常见做法吗?或者这只是简单的坏事,无论如何应该删除?

coding-style

8
推荐指数
4
解决办法
604
查看次数

WinRT应用程序可以使用混淆吗?

在通过Windows 8 AppStore分发之前,必须检查所有Metro应用程序.这是否意味着不允许使用代码混淆?或者它仍然可能,并且在这种检查期间只会监控某些特定方面?

obfuscation windows-8 windows-runtime

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

丰富的SDK框架的优点

浏览互联网,我找到了新的Ample SDK JavaScript框架.从他们的关于部分:

丰富的SDK是基于标准的跨浏览器JavaScript GUI框架,用于构建富Internet应用程序.它采用XML技术(如XUL,SVG或HTML5)进行UI布局,使用CSS进行UI样式,使用JavaScript进行应用程序逻辑.它使浏览器均衡,并为缺少任何浏览器的人提供技术支持.

他们网站的例子看起来非常有前景.

有没有人尝试在实际项目中使用这个框架?使用Ample SDK的优缺点是什么?

我主要对您的主观实际使用体验感兴趣,而不是对其网站上已有的信息感兴趣.

javascript frameworks rich-internet-application

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

依赖注入和默认构造函数的使用

我正在尝试理解依赖注入的概念。下面是我尝试调试的示例。在这里,我创建了 Customer 类,我已将其依赖项注入到他的构造函数中。现在,当我调用this.Iorder.GetOrderDetails();Index方法时,它给我错误NullReferenceException并要求使用new关键字创建一个对象来调用该方法。当我将此调用this.Iorder.GetOrderDetails();移至另一个方法GetCutomerDetails()并在索引方法中调用该方法时,它起作用了。

问题:我无法理解为什么this.Iorder.GetOrderDetails() 方法调用在方法中不起作用 Index以及为什么它在方法中起作用GetCutomerDetails()

public  interface IorderDetails
{
    void GetOrderDetails();
}

public class CustomerModel : IorderDetails
{
    public void GetOrderDetails() {}
}
Run Code Online (Sandbox Code Playgroud)

控制器:

public class CustomerController: Controller
{
    private IorderDetails Iorder;

    //DI constructor  Injecting OrderDetails object 
    CustomerController(IorderDetails iorderObj)
    {
        if (iorderObj == null)
            throw new ArgumentNullException("orderObj should not be null");

        this.Iorder = iorderObj;
    }
    //Default constructor  
    public CustomerController() { }

    public ActionResult …
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection code-injection

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

IKVM.Reflection在运行时为Windows应用商店应用程序发出IL?

我看到一个帖子IKVM.Reflection由Marc Gravell,这里是我的发现在IKVM 用户指南:

使用IKVM.NET有两种主要方式:

  • 动态:在此模式下,Java类和jar直接用于在.NET运行时上执行Java应用程序.Java字节码即时转换为CIL,无需进一步的步骤.此模式支持完整的Java类加载器模型.
  • 静态地说:......

我想用它在WinRT应用程序中发出和执行IL.有什么根本问题可以解决这个问题吗?像Microsoft的政策,或阻止从IKVM执行(可能修补的)Reflection&IL Emitting代码的技术限制?

如果这不可能,是否有任何选项在运行时加载程序集(假设我在外部服务器上发出它们并从那里下载到本地应用程序文件夹)?

il ikvm reflection.emit assembly-loading windows-runtime

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