小编Jon*_*ter的帖子

f#如何决定在启动时运行哪个文件?

很好,我是F#的全新手.我创建了我的第一个控制台应用程序,我想不出F#如何决定我.FS的哪些文件它要在启动时运行.通常,应用程序有一个入口点,而F#表单我见过的项目有一个入口点.我的控制台项目没有.

它总是似乎从我添加的最后一个文件开始,这是一个巨大的痛苦.我无法相信它应该以这种方式工作.我一定做错了什么.

f#

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

跟踪Observable中的(观察者数量)?

我有一个可观察的代表股票价格的流.如果我的可观察序列上没有观察者,我希望能够从提供价格流的远程服务器断开连接,但我不希望这样做,直到每个观察者都调用Dispose().然后以类似的方式,当第一个人调用Subscribe时,我想重新连接到远程服务器.

有没有办法弄清楚有多少观察者在可观察量上调用了订阅?或者也许是一种了解观察者何时调用Subscribe或Dispose的方法?

c# system.reactive

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

大型监视器会减慢winforms应用程序吗?

WinForms应用程序在更大的显示器上运行速度会更慢(即更大的分辨率),而其他更小的其他应用程序是否相同 我的直觉是肯定的,因为有更多的房地产要画,但我找不到任何关于效果的信息.

我问,因为我们有一个WinForms应用程序,通常在两台22英寸显示器上运行,但我们有几个用户在两台30英寸显示器上运行它们,并且它们的GUI似乎总是比使用22英寸显示器的人更多延迟.

c# performance winforms

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

如何在F#中反转矩阵?

我需要使用F#执行一些基本的OLS回归.要做到这一点,我需要一些线性代数函数,但我很困惑那里有什么.我找不到任何方法来反转矩阵.有一些名为库的文档Microsoft.FSharp.Math.LinearAlgebra,但我不知道它是否存在.

f# matrix

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

如何在打开之前过滤Tortoise SVN修订图?

有没有办法在打开之前过滤Tortoise SVN修订图?它花了一分多钟打开它,导致太多的走廊剑术.我可以在打开后轻松过滤,但这就是我的问题.

理想情况下,我真的只需要看到最近的100个左右的修订,而不是从一开始就是一切.

tortoisesvn

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

如何使用 NMS 和 C# 识别 ActiveMQ 断开连接

我有一个 C# 发布者和订阅者,它们使用 ActiveMQ 和 NMS 相互交谈。一切正常,除了我无法知道 ActiveMQ 何时出现故障。这对消费者来说尤其不利。他们停止获取数据,但除了数据停止显示这一事实之外,不会引发任何错误或事件。

有没有办法使用 NMS(特别是 Apache.NMS.IConnection 或 Apache.NMS.ISession 对象)

我从 Spring 下载了我正在使用的实现,但我没有使用任何特定的 spring 实现,我使用的所有内容都在 Apache.NMS 和 Apache.NMS.ActiveMQ 命名空间中。

activemq-classic

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

我可以将组合和继承与C#中的接口结合起来吗

我有一个我无法弄清楚的设计问题.这是我得到的:

一般来说,我有两种常见类型的对象Strikes和Options.这些已被抽象为IStrike和IOption两个接口.

假设IOption有以下几个字段,实际上大约有10倍,但我们可以使用以下三个来说明问题.

interface IOption
{
   double Bid{get;set;}
   double Ask{get;set;}
   double ImpliedVol{get;set;}
}


interface IStrike
{
   IOption Call{get;set;}
   IOption Put{get;set;}
}
Run Code Online (Sandbox Code Playgroud)

现在,这一切都很好,但是让我说我​​已经有了以下方法来对IOption隐含卷执行一些"数学"

public double SquareImpliedVol(IOption opt)
{
   return Math.Pow(opt.ImpliedVol,2);
}
Run Code Online (Sandbox Code Playgroud)

同样,不是问题,但是当我为我的测试编写一些模拟对象时,我不清楚是否需要实现Bid和Ask.我没有,但我不知道除非我知道SquareImpliedVol里面的内容,这意味着我正在编写针对代码的测试,这很糟糕.

所以为了解决这个问题,我可以创建另一个只包含ImpliedVol属性的接口IOptionImpliedVol,然后让IOption继承自IOptionImpliedVol,就像这样

interface IOption : IOptionImpliedVol
{
   double Bid{get;set;}
   double Ask{get;set;}
}
Run Code Online (Sandbox Code Playgroud)

然后我们可以切换SquareImpliedVol

public double SquareImpliedVol(IOptionImpliedVol opt)
{
   return Math.Pow(opt.ImpliedVol,2);
}
Run Code Online (Sandbox Code Playgroud)

而且我们很棒.我可以写模拟对象,一切都很甜蜜.除了....我想编写一个将在List上运行的方法,但我需要的唯一属性是IStrike,它是Call.ImpliedVol和Put.ImpliedVol.我想创造类似的东西

interface IStrikeImpliedVol
{
   IOptionImpliedVol Call;
   IOptionImpliedVol Put;
}
Run Code Online (Sandbox Code Playgroud)

然后我也可以

interface IStrike : IStrikeImpliedVol
{
   IOption Call;
   IOption Put;
}
Run Code Online (Sandbox Code Playgroud)

除非这不合法.我觉得必须有某种设计模式,我可以解决这个问题,但我陷入了某种组合和继承的网络.

c# c#-4.0

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

如何使用Lambda表达式在C#中的字符串列表中添加每个项目

我在这里找到了这个版本的VB版本,但是我想使用Lambda Expression来获取字符串列表,然后在字符串中的每个项目前面添加一个字符串.

似乎使用ForEach最终按值发送字符串,因此任何更改都会消失.这是我希望工作的代码行.

listOfStrings.ForEach((listItem) => {listItem = listItem.Insert(0,"a");});
Run Code Online (Sandbox Code Playgroud)

c# lambda

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

c#中ShowDialog()和ShowDialog(IWin32Window)有什么区别?

双方ShowDialog();ShowDialog(IWin32Window);似乎做同样的事情对我来说.文档也不是很清楚.

我被告知ShowDialog(IWin32Window);将确保对话窗口位于作为所有者窗口传入的内容之上.

MSDN文档没有提到这一点,所以感觉有点像黑魔法.

c# winforms

5
推荐指数
2
解决办法
4306
查看次数

我可以从中央文件设置C#预处理器指令吗?

我需要在我的应用程序中添加一些日志记录,它需要处于发布模式,我需要确保日志代码没有在生产中运行.因此,我想使用#define和#if来确保在移动到生产时删除日志语句.

麻烦的是,我需要记录多个文件,将#define放在每个文件的顶部是一件痛苦的事.有没有办法集中#define?这样我就可以从所有文件中删除单个#define而不是#define(这意味着我几乎肯定会忘记一个).

c#

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