小编NoP*_*God的帖子

我无法在javascript中扩展String原型

这是代码

<script>

String.prototype.testthing = function() {
    return "working";
}

alert(String.testthing());

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

当我打开此页面时,我收到以下错误

Uncaught TypeError: Object function String() { [native code] } has no method 'testthing'
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么.我已经扩展了Array原型而没有任何问题.

javascript prototype-programming

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

奇怪的Delphi整数乘法行为

我正在研究一些古老的Delphi代码,我遇到了一些我不太了解的东西.

[bla is set to 130245932]

outresult := ((bla * 1103516849) + 12359);

[outresult is equal to -413953101]
Run Code Online (Sandbox Code Playgroud)

如何将两个正数相乘得到负数?为什么当我将bla变量从等式中取出并直接使用整数时(就像这样)

outresult := ((130245932 * 1103516849) + 12359);
Run Code Online (Sandbox Code Playgroud)

在应用程序编译之前我收到错误

[DCC Error] Unit1.pas(60): E2099 Overflow in conversion or arithmetic operation
Run Code Online (Sandbox Code Playgroud)

一些天才将不胜感激.谢谢.

delphi math

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

为什么没有订阅重载只需要一个错误处理程序?

IObservable的订阅重载为Next,Next + Error,Next + Complete,Next + Complete + Error,但为什么单独只有Errors没有可观察到的?

我认为这是因为可能存在异常的IObservable,它会导致冲突,即:

IObservable<Exception> obs;
obs.Subscribe(ex => { });
Run Code Online (Sandbox Code Playgroud)

RX不知道您是否订阅了Next或Error.

有没有一种方法可以单独订阅错误而无需创建一个空的完整代表?

obs.Subscribe(
    o => { },
    ex =>
    {
        // error-handling-code
    });
Run Code Online (Sandbox Code Playgroud)

c# exception-handling system.reactive

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

可观察的等待方法C#

Observable.FromAsyncPattern可用于从BeginX EndX样式的异步方法中创建一个observable.

也许我误解了一些事情,但是有一个类似的功能来从新的异步样式方法创建一个observable - 即.. Stream.ReadAsync?

c# system.reactive

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

Chrome扩展程序:IFrame并收听其中的点击次数

我想将一个iframe(frame.html是我的扩展的一部分)插入到网站的主体中,然后能够接收其中两个按钮的点击事件.

遇到同一原产地政策等问题

我确信这有一个相对优雅的解决方法,但我没有太多运气找到它.

javascript google-chrome-extension

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

如何在C#中模拟Delphi 2007 SecondsBetween函数?

这是对前一个问题的跟进: C#与Delphi中的日期/时间计算之间的差异

我正在将用Delphi编写的企业应用程序移植到C#.该应用程序使用非常基本的加密形式来存储它生成的文本文件.此加密基于Delphi SecondsBetween命令,该命令返回两个日期之间的秒数.

对我来说问题是,在旧版本的Delphi(我正在移植的版本)中,SecondsBetween命令存在一个错误,导致它返回一个关闭的值 - 但只有大约50%的时间

这个bug是一个舍入错误.Delphi最初使用的是Trunc而不是Round.在此处查看更多详细信息 - http://qc.embarcadero.com/wc/qcmain.aspx?d=59310

以下是演示此问题的代码:

德尔福:

SecondsBetween(StrToDateTime('16/02/2009 11:25:34 p.m.'), StrToDateTime('1/01/2005 12:00:00 a.m.'));

130289133
Run Code Online (Sandbox Code Playgroud)

C#:

TimeSpan span = DateTime.Parse("16/02/2009 11:25:34 p.m.").Subtract(DateTime.Parse("1/01/2005 12:00:00 a.m."));

130289134
Run Code Online (Sandbox Code Playgroud)

我想要做的是弄清楚如何在C#中模拟这种错误的行为,以便我可以读/写Delphi应用程序编写的文本文件.

c# delphi datetime delphi-2007

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

ASP.NET MVC在哪里保留SelectLists的值

我目前在ViewModel的顶部遇到了所有这些混乱,我觉得这违反了DTO的目的.例如,这是我的一个视图模型的构造函数 -

        Dictionary<int, string> chargeGroups = new Dictionary<int, string>();
        chargeGroups.Add(1, "Administration");
        chargeGroups.Add(2, "Annual Leave");
        chargeGroups.Add(3, "Bereavement");
        chargeGroups.Add(4, "Customer Installation, Setup & Training");
        chargeGroups.Add(5, "Customer Support");
        chargeGroups.Add(6, "Internal Training & Education");
        chargeGroups.Add(7, "Sales & Marketing");
        chargeGroups.Add(8, "Sick");
        chargeGroups.Add(9, "Software Devel / Maint / Test");
        chargeGroups.Add(10, "Software Upgrade / Patch");
        chargeGroups.Add(11, "Other");
        chargeGroups.Add(12, "Other Absence");
        chargeGroups.Add(13, "Warranty");
        chargeGroups.Add(14, "Public Holiday");
        chargeGroups.Add(15, "Other Paid Leave");

        ChargeGroups = new SelectList(chargeGroups, "Key", "Value");
Run Code Online (Sandbox Code Playgroud)

我的viewmodel:

    [DisplayName("Charge group")]
    public short? ChargeGroup { get; set; }

    public SelectList …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework

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

防止单元格级别制表位停止,但仍允许行在WPF DataGrid中具有制表符

我希望阻止单个单元格上的tabstops,但允许行级别tabstops

我以为我可以使用CellStyle在所有单元格上禁用IsTabStop

<DataGrid.CellStyle>
    <Style TargetType="DataGridCell">
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="IsTabStop" Value="false"/>
    </Style>
</DataGrid.CellStyle>
Run Code Online (Sandbox Code Playgroud)

但这也可以防止行也有tabstops

所以我想我应该使用RowStyle在行上启用tabstops

<DataGrid.RowStyle>
    <Style TargetType="DataGridRow">
        <Setter Property="IsTabStop" Value="true"/>
    </Style>
</DataGrid.RowStyle>
Run Code Online (Sandbox Code Playgroud)

但这也不起作用

有人有任何想法吗?

c# wpf datagrid

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

PagedList的帮助器支持ASP.NET MVC中不显眼的Ajax

我目前正在使用PagedList(https://github.com/TroyGoode/PagedList/)来管理我在ASP.NET MVC应用程序中的分页.

截至今天,我已经开始将应用程序的某些部分转换为使用AJAX,ASP.NET MVC非常容易.

然而,我遇到的第一个问题是PagedList.MVC帮助程序@ Html.PagedListPager与任何不引人注目的AJAX都没有任何关系.

我真正需要做的是为分页链接添加一些属性(见下文),其余的将自动处理.但是,PagedListPager没有提供任何方法来执行此操作.

data-ajax="true" data-ajax-mode="replace" data-ajax-update="#SearchResults" 
Run Code Online (Sandbox Code Playgroud)

有没有人碰到这个并找到了一个优雅的解决方案?

asp.net-mvc pagination pagedlist

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

.NET Framework中的线程安全类的示例?

我目前正在研究应该是线程安全的代码.许多异步调用和事件以及通常需要相当多工作才能保持同步和线程安全的东西.

.NET框架中是否有任何类可以处理这类事情,我可以看一下(反编译),看看应该怎么做?越复杂越好......

.net c# events multithreading locking

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

在运行时更改DbContext使用的实体框架默认连接字符串

我有一个使用实体框架的程序,根据运行它的计算机,它将通过网络连接到远程数据库或本地文件系统上的本地数据库.

使用实体框架,当我创建一个MyDbContext实例(它继承自实体框架的DbContext)时,它使用代码的第一个命名约定,并在app.config/web.config中查找具有相同名称(id)的连接字符串.类-ie .. MyDbContact.通常这是一个非常有用的约定,但它不适合我的特定用例.

当我的应用程序加载时,在任何查询发生之前,我想将命名连接字符串设置为我喜欢的字符串 - 即...远程数据库或本地连接字符串的连接字符串.

然后,MyDbContext的所有未来实例将自动获取我的自定义连接字符串.

我不想在web/app.config中对连接字符串进行硬编码.

该程序在很大程度上依赖于IoC /依赖注入并使用域驱动设计和存储库+服务模式,我也不希望必须将连接字符串指定为在向解析器注册它们时传递给每个存储库的参数( autofac).

对我来说,在实体框架中的某个地方必须有一个地方可以拦截这个代码,首先从web.config中检索连接字符串,然后传入一个自定义字符串.

我离开了,还是实际上有一种在运行时更改默认连接字符串的方法?

domain-driven-design entity-framework repository-pattern

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