小编Bea*_*der的帖子

.NET方法(.dll)和反映版本之间的性能差异

我一直在尝试优化JavaScript编码功能(在C#中)以提高其性能(总体上是为了提高企业Web应用程序的性能).我们尝试使用.NET HttpUtility.JavaScriptStringEncode但它没有编码我们的数据层预期的方式(并且更改数据层不在表上).

使用RedGate分析器工具,我确定我们的功能的最佳性能约占总页面负载的8%.当我使用.NET函数(在接受它的页面上)时,它占总页面加载的大约.08%.我们反映了.NET函数,看看他们正在使用什么样的魔法,当我将反射的代码复制到函数中并直接运行时,它的执行率大约为10%.

我很好奇为什么.如何通过不同的方式准备.NET功能以奖励这样的性能提升?

我提前道歉,但我不能粘贴我们正在使用的功能,但我认为这不会影响回答问题.

.net c# dll assemblies

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

QUnit,Sinon.js - 我如何确保Post-Fake Server有正确的请求体?

我有一个JavaScript函数,它发布了一个远程API,我正在编写单元测试.我想测试的方法是这样的:

var functionToTest = function(callback, fail) {
    $.ajax({
        url: "/myapi/",
        type: "POST",
        data: { one: 'one', two: 'two' },
        accept: "application/json",
        contentType: "application/json"
    }).done(function(x) {
        log = generateLogMessage('Success');
        callback(log);
    }).fail(function(x, s, e) {
        log = generateLogMessage('Fail');
        fail(log);
    });
}
Run Code Online (Sandbox Code Playgroud)

我有一个单元测试(在QUnit中利用Sinon.js)测试在请求成功时正确调用回调:

QUnit.test('Test that the thing works', function () {

    var server = this.sandbox.useFakeServer();

    server.respondWith(
        'POST',
        '/myapi/',
        [
            200,
            {'Content-Type': 'application/json'},
            '{"Success":true}'
        ]
    );

    var callback = this.spy();
    functionToTest(callback, callback);
    server.respond();

    QUnit.ok(callback.calledWith(generateLogMessage('Success')));
});
Run Code Online (Sandbox Code Playgroud)

此测试有效,但无论请求主体是什么,它都会成功返回.我想要做的只是假冒服务器响应请求正文{ one: 'one', two: 'two' }

javascript unit-testing qunit sinon

8
推荐指数
2
解决办法
3312
查看次数

标签 统计

.net ×1

assemblies ×1

c# ×1

dll ×1

javascript ×1

qunit ×1

sinon ×1

unit-testing ×1