小编Tru*_*an1的帖子

给定数字时,将小数四舍五入到最接近的增量

我想将小数四舍五入到另一个数字的最接近的增量。例如,给定值2.23678301和增量0.0001,我想将其舍入为2.2367。有时增量可能类似于0.00022,在这种情况下,该值将向下舍入为2.23674

我尝试这样做,但有时结果不正确并且测试未通过:

extension Decimal {
    func rounded(byIncrement increment: Self) -> Self {
        var multipleOfValue = self / increment
        var roundedMultipleOfValue = Decimal()
        NSDecimalRound(&roundedMultipleOfValue, &multipleOfValue, 0, .down)
        return roundedMultipleOfValue * increment
    }
}

/// Tests

class DecimalTests: XCTestCase {
    func testRoundedByIncrement() {
        // Given
        let value: Decimal = 2.2367830187654

        // Then
        XCTAssertEqual(value.rounded(byIncrement: 0.00010000), 2.2367)
        XCTAssertEqual(value.rounded(byIncrement: 0.00022), 2.23674)
        XCTAssertEqual(value.rounded(byIncrement: 0.0000001), 2.236783)
        XCTAssertEqual(value.rounded(byIncrement: 0.00000001), 2.23678301) // XCTAssertEqual failed: ("2.23678301") is not equal to …
Run Code Online (Sandbox Code Playgroud)

decimal rounding foundation swift

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

还原Azure Web角色网站?

我从Visual Studio发布了一个Azure Web角色,出了点问题.我认为我的工作站设置有误.如果部署出错,有没有办法恢复Azure网站?

windows cloud azure visual-studio cloud-hosting

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

如何修复此代码中的SQL连接泄漏?

我在我的网站上收到此错误:

超时已过期.从池中获取连接之前经过的超时时间.这可能是因为所有池连接都在使用中并且达到了最大池大小.

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.InvalidOperationException:超时已过期.从池中获取连接之前经过的超时时间.这可能是因为所有池连接都在使用中并且达到了最大池大小.

这是在任何地方重用的C#类(我认为泄漏在这里):

public class Generator
{

SqlConnection cn = null; // new SqlConnection(connectionString);

    public SqlConnection Connection {
        get {
            if (cn == null) {
            cn = new SqlConnection("Server=xxxxx,1433;Database=xxxxx;User ID=xxxxx;Password=xxxxx;Trusted_Connection=False;Encrypt=True;");
            }
            if(cn.State != ConnectionState.Open)
                cn.Open();

            return cn;
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

然后在我的方法中我使用它像这样:

        var cmd = _generator.Connection.CreateCommand();
        cmd.CommandText = "SELECT * FROM SomeTable";
        var reader = cmd.ExecuteReader();

        while (reader.Read())
        {
            //DO SOMETHING
        }
        reader.Close();
Run Code Online (Sandbox Code Playgroud)

编辑:在我的方法的类中,我尝试跨多个方法共享相同的SQL连接,如下所示:

private Generator _generator;

public HomeController()
{
    InitializeConnection();
}

private void InitializeConnection()
{
    _generator = …
Run Code Online (Sandbox Code Playgroud)

.net c# sql-server asp.net ado.net

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

在JavaScript中解析哈希url到对象?

我想在页面加载上执行一个进程,具体取决于URL中的哈希值.我想我需要RegEx,因为我正在寻找一个纯JavaScript解决方案(没有库依赖).

我想要做的是如果哈希是"#/ products",那么我将调用"myIndex()"否则如果哈希是"#/ products/3",那么我将调用"myDetail(id)",其中"id"是产品编号的变量.

有人知道如何实现这个目标吗?

javascript regex url cross-browser url-routing

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

找到行索引的有效方法?

我通过这样做得到一行的索引:

row.parent().children("tr").index(row)
Run Code Online (Sandbox Code Playgroud)

有没有更有效的方法来查找索引?我有数百行,所以它杀死我的性能,我必须选择所有行只是为了找到索引.

html javascript performance jquery jquery-selectors

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

重写这个jQuery查找选择器?

我在IE中遇到性能问题并使用浏览器分析器,我将其缩小到这个:

$tbody.find('> tr:not(.t-grouping-row,.t-detail-row)')
Run Code Online (Sandbox Code Playgroud)

这究竟是什么意思以及关于如何重写这一点的任何想法,以便它在IE中表现更好(如果有意义,可能是纯Javascript)?

javascript performance jquery internet-explorer jquery-selectors

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

获得有colspan孩子的行?

如何获取对jQuery中具有colspan的子单元格的所有行(tr)的引用?

<table id="report">
    <tr>
        <th>Lorem ipsum</th>
        <th>Lorem ipsum</th>
        <th>Lorem ipsum</th>
        <th>Lorem ipsum</th>
    </tr>
    <tr>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
    </tr>
    <tr>
        <td colspan="4">
            <!-- Details here -->  
        </td>
    </tr>
    <tr>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
        <td>Lorem ipsum</td>
    </tr>
    <tr>
        <td colspan="4">
            <!-- Details here -->  
        </td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-selectors

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

如何从Google Map对象隐藏总线?

Google Map API中是否有任何地方可以隐藏地图上的公交车?我在mapOptions中找不到任何东西.任何帮助将不胜感激.

在此输入图像描述

javascript google-maps google-maps-api-3

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

如何将Linq staement传递给另一种类型?

下面我有一个包装另一个方法的方法.我想要做的是提供一个可选参数来过滤内部方法,这是一种与T不同的类型.

这是被认为是"公共"API的外部方法:

public override IQueryable<T> GetEverything()
{
    return Get()
        .Where(i => i.Active == true)
        .Select(i => new T(i));
}
Run Code Online (Sandbox Code Playgroud)

作为伪代码,我想做这样的事情:

var items = GetEverything(x => x.SomeValue > 10);
Run Code Online (Sandbox Code Playgroud)

哪个会像这样传递给方法

   public override IQueryable<T> GetEverything(???)
    {
        return Get()
            .Where(i => i.Active == true)
            .Where(x => x.SomeValue > 10)
            .Select(i => new T(i));
    }
Run Code Online (Sandbox Code Playgroud)

注意我仍然想保留我的i.Active过滤器,如果开发者决定传入过滤器,我不想放松它.传入的过滤器将不会替换内部过滤器.有人能帮忙吗?任何帮助或建议将不胜感激!

.net c# linq linq-expressions

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

什么类型的字符串枚举,所以它可以用作参数?

在我当前的实现中,我使用rawValue这样的方式将字符串枚举传递给函数:

enum Compass: String {
  case North, South, East, West
}

func something(key: String) {...}

something(Compass.East.rawValue)
Run Code Online (Sandbox Code Playgroud)

除了String功能之外是否有其他类型,所以我可以做这样的事情?

something(Compass.East)
Run Code Online (Sandbox Code Playgroud)

我不想制作key类型的参数Compass,因为我enums来自各个地方,但都继承自String.

我试过这样做,但收到了一个错误:

func something(key:StringLiteralConvertible){...} //错误:协议'StringLiteralConvertible'只能用作通用约束

有没有我可以使用的类型,所以我不必rawValue每次都使用.

enums swift

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

处理同一个分段按钮?

我正在尝试在分段控件上处理点击事件,但是再次单击所选按钮时.例如,对于下面已选择"秒"的屏幕截图,如何再次单击"第二个"按钮时如何处理操作?

我试过了IBOutlet,但它只在值发生变化时触发.然后我尝试了下面的代码,但是只有在值发生变化时它才触发.在两种情况下,选择"秒"时,再次单击"秒"不会触发任何内容.有没有办法做到这一点?

segmentedControl.addTarget(self, action: "segementedAnyTap:", forControlEvents: .AllEvents)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

uisegmentedcontrol iboutlet ios ios8

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