小编Tim*_*Tim的帖子

SignalR中心构造函数何时被调用?

我正在尝试调试SignalR集线器,并注意到即使使用单个客户端,构造函数也会被多次调用.这是预期的行为吗?我期待构造函数只被调用一次用于类初始化,但我多次击中断点.

c# signalr signalr-hub

18
推荐指数
2
解决办法
6090
查看次数

更改ASP MVC3中使用的默认JSON序列化程序

我有一个控制器将大型JSON对象返回到jQuery Flot,我想知道用ServiceStack.Text中的那个更快地替换默认的JavaScriptSerializer是多么容易.

如果我可以使用DependencyResolver更改这样的东西会很好,但我想如果一切都解决了,那么它可能会变得很慢.

asp.net-mvc serialization json asp.net-mvc-3

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

在C#Desktop App中存储我的亚马逊凭证

我正在寻找在桌面应用程序中使用Amazon S3和simpleDB.

我遇到的主要问题是我需要在应用程序中存储我的aws凭据或使用其他一些方案.

我猜测将它们存储在应用程序中是不可能的,因为它们很容易被挑选出来.

另一种选择是创建一个创建aws身份验证签名的Web服务,但这有其自身的问题.签名是否需要上传文件中的所有数据?如果是这样,我将不得不两次传输所有数据.然后会出现一个中心故障点,这是使用aws的主要原因之一.

有任何想法吗?

更新:

我需要更清楚一点,我想将我的aws凭证存储在分发给他人的应用程序中.DPAPI或任何其他加密只会阻止人们使用反射器来获取凭据.使用任何加密仍然需要易于获得的密钥.

更新2 - 2011年9月

亚马逊已经发布了一些有关使用AWS Security Token Service的详细信息,该服务允许在不泄露您的密钥的情况下进行身份验证.此博客文章中提供了更多详细信息.

.net c# amazon-s3 amazon-web-services

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

使用程序集作为许可证文件的优点/缺点?

我最初打算使用签名的序列化xml文件来存储许可证详细信息.在规划中,越来越多的人进入了这个"许可证文件",这将允许我们通过提供的许可证文件分发单个应用程序并控制可用的功能.

用户界面和打印的报告与经销商徽标共同标记,因此如果将其嵌入到许可证中将会很好.我知道这可以用序列化的xml文件完成,但我想知道在编译的程序集中存储这些数据的优点和缺点是什么?

许可证生成工具可以使用适当的属性和资源编译程序集并对其进行签名.

更新
从我所看到的,使用序列化的xml或程序集将非常相似.从我的角度来看,程序集将允许我添加其他资源并为将来留下一些灵活性.一旦资源变得复杂,xml序列化就很麻烦.

Update2
该软件仅适用于我们的硬件,因此许可证安全性不是一个大问题.主要目的是阻止临时用户启用他们尚未支付的功能.我会选择一个而不是设计简单!

.net c# reflection assemblies

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

不学习计算我错过了什么?

我正在为一家小公司编写C#.NET应用程序.对于我们这些没有编程学位的人来说,我们错过了什么可能需要我们多年才能找到自己的教学?

我有电子工程学位,所以不像我16岁就离开学校,坐在Visual Studio旁边.我已经在我的学习,算法,控制系统,数学等方面介绍了一些基本的嵌入式C.我只是觉得必须要做的事情我应该知道这样做但不要.

computer-science

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

Amazon S3发布SSL以使用c#sdk

我正在使用Amazon AWS .NET SDK v1.2.1.

以下代码在DNS查找失败后引发异常,myBucket.more.https这显然不是它应该寻找的...

AmazonS3Config S3Config = new AmazonS3Config()
{
    ServiceURL = "https://s3.amazonaws.com",
    CommunicationProtocol = Amazon.S3.Model.Protocol.HTTPS,
};

using (AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(accessKey,secretKey, S3Config))
{
    PutObjectRequest request = new PutObjectRequest();

    using (MemoryStream ms = new MemoryStream(inputBytes))
    {
        request.WithBucketName("myBucket.more")
                .WithKey(output.Name)
                .WithInputStream(ms);

        using (S3Response response = client.PutObject(request))
        {
                        Log.Message("File Sent: " + output.Name);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我https://从ServiceURL的前面删除它,它会抛出一个Web异常:

"The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel."

那我怎么想让SSL工作呢?

我到目前为止管理的唯一方法是使用以下方法,这是不安全的:

AmazonS3Config S3Config = …
Run Code Online (Sandbox Code Playgroud)

c# amazon-s3 amazon-web-services

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

将自定义ValueProviderFactories添加到ASP.NET MVC3?

我想尝试将一个Protobuf ValueProviderFactory添加到MVC3,以便我可以选择MIME类型并将原始数据反序列化为对象以获取操作参数.我也可以使用它来更改默认的Json序列化程序.

JsonValueProviderFactory.cs这个应该不会太难,但工厂似乎都是硬编码的.

对于Protobuf我可以用IValueProvider做一些事情,但我还没有检查MVC3在收到MIME类型时做了什么application/x-protobuf.

我是以正确的方式来做这件事的吗?

UPDATE

我发现这个博客文章谈论创建一个IValueProvider.然后它在底部提到这改变了MCV2.他将其改为a ValueProviderFactory并致电:

ValueProviderFactories.Factories.Add(new HttpCookieValueProviderFactory());
Run Code Online (Sandbox Code Playgroud)

但在MVC3中,此属性是只读的.

.net asp.net-mvc protobuf-net asp.net-mvc-3

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

实施Hann Window

我获取输入数据块并通过fftw传递它们以获得一些光谱信息.一切似乎都在起作用,但我认为我遇到了一些别名问题.

我一直在努力研究如何在我的数据块上实现一个hann窗口.谷歌让我失望的例子.我应该关注的任何想法或链接?

double dataIn[2048] > /* windowing here? */ > FFT > double freqBins[2048]
Run Code Online (Sandbox Code Playgroud)

更新

感谢Oli指出我实际上要解决的问题是光谱泄漏,而不是混叠...

c signal-processing fft fftw

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

使用spectron测试电子应用程序重新启动时丢失webdriverio会话

我正在使用spectron对我的电子应用程序运行集成测试.除了尝试测试应用程序设置在应用程序重新启动之间正确保留之外,一切正常.

在运行测试时,我的应用程序启动userData每个测试的新临时目录,以确保测试被隔离.这意味着持久性测试需要理想地在单个测试中进行,为实现这一点,我必须在测试过程中重新启动应用程序.有一种app.restart方法,所以必须得到支持吗?

我正在使用以下光谱测试代码:

// save some settings here

await app.restart();
await app.client.waitUntilWindowLoaded()

// do some more checking to ensure the app is fully loaded
// check the settings here
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

Error: waitUntilWindowLoaded Promise was rejected with the following reason: 
Error: A session id is required for this command but wasn't found in the response payload
Run Code Online (Sandbox Code Playgroud)

这样做的正确方法是什么?我也尝试停止Application实例并启动一个具有类似结果的新实例.

webdriver-io electron spectron

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

修复流式USB数据的差距

我们有一个带有一些FPGA的硬件系统和一个FTDI USB控制器.通过USB的硬件流数据以大约5MB/s的速度传输到PC,软件的任务是保持同步,检查CRC并将数据写入文件.

FTDI芯片有一个"忙"的引脚,当它等待PC开展业务时它会很高.FTDI和其他硬件上的缓冲量有限.

忙线的持续时间比硬件缓冲时间长(50-100ms),因此我们正在丢失数据.为了避免我们重新设计硬件,我被要求"修复"这个问题!

我认为我的代码足够快,因为我们的代码运行速度高达15MB/s,因此在某个地方留下了IO瓶颈.我们只是期望PC/OS过多吗?

这是我的数据录入点.偶尔我们会得到一个丢弃的位或字节.如果校验和没有计算,我会转移直到它完成.byte []数据几乎总是4k.

    void ftdi_OnData(byte[] data)
    {
        List<byte> buffer = new List<byte>(data.Length);
        int index = 0;

        while ((index + rawFile.Header.PacketLength + 1) < data.Length)
        {
            if (CheckSum.CRC16(data, index, rawFile.Header.PacketLength + 2)) // <- packet length + 2 for 16bit checksum
            {
                buffer.AddRange(data.SubArray<byte>(index, rawFile.Header.PacketLength));                 
                index += rawFile.Header.PacketLength + 2; // <- skip the two checksums, we dont want to save them...
            }
            else
            {
                index++; // shift through
            }
        }

        rawFile.AddData(buffer.ToArray(), 0, buffer.Count);
    }
Run Code Online (Sandbox Code Playgroud)

.net c# usb

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