小编Iga*_*nik的帖子

C#类定义未知

我正在查看一些C#代码,我看到了一些我无法在类定义附近弄清楚的东西.这是我所看到的样本.

[MethodImpl(MethodImplOptions.Synchronized)]
public void AddTag(RTag tag)
{
    this.tags.Add(tag)
}
Run Code Online (Sandbox Code Playgroud)

什么是第一线做或说?我无法在任何参考书中追踪它.

谢谢!

c#

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

使用FakeItEasy进行伪造方法调用会引发事件吗?

我正在努力做一些事情:

A.CallTo(() => fakeTimer.Start()).Invokes(() => 
    fakeTimer.Elapsed += Raise.With<ElapsedEventArgs>(ElapsedEventArgs.Empty).Now);
Run Code Online (Sandbox Code Playgroud)

根据这个答案,它fakeTimer是一个假的ITimer,一个包装器接口.

显然这不起作用,因为我无法在Experssion Tree中进行任务.

我实际上要实现的是Start在调用方法时模拟提升计时器事件.这样我就可以断言Start确实发生了一次调用.

任何(替代)想法?

编辑我是个白痴,错是我自己的!我不小心添加了一个额外的A.CallTo,我不应该.我没有删除这个问题,而是继续授予PatrikHägne他的合法声誉:)

c# mocking fakeiteasy

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

从对象数组中获取字符串数组

我有一个Tag对象数组

class Tag
{
 public string Name;
 public string Parent;
}
Run Code Online (Sandbox Code Playgroud)

我希望代码返回标签名称列表作为字符串数组

c# arrays

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

CodeDom和集合初始化程序

有没有办法使用C#CodeDom生成字典初始化程序?那些支持吗?

我想拥有:

private IDictionary<string, string> map = new Dictionary<string, string>
{
    { "Name", "Value" },
    ...
};
Run Code Online (Sandbox Code Playgroud)

c# code-generation codedom object-initializers

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

将OOP"装饰器"重构为自由monad结构

我有一些"遗留的"Scala代码(类似Java),它可以进行一些数据访问.有一个装饰器跟踪DAO方法的使用(收集指标),如下所示:

class TrackingDao(tracker: Tracker) extends Dao {
    def fetchById(id: UUID, source: String): Option[String] = {
        tracker.track("fetchById", source) {
            actualFetchLogic(...)
        }
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

我试图把它塑造成一个免费的monad.我为DAO操作定义了以下代数:

sealed trait DBOp[A]
case class FetchById(id: UUID) extends DBOp[Option[String]]
...
Run Code Online (Sandbox Code Playgroud)

我看到两个选择:

a)我可以制作两个解释器DBOp,一个执行实际数据访问,另一个执行跟踪,并将它们组合在一起或者
b)我使跟踪成为一个显式代数,并使用Coproduct在同一个for组合中使用它们或者
c)完全不同的东西!

第一个选项看起来更像是一个"装饰器"方法,它与DBOp第二个选项相关,第二个选项是更通用的解决方案,但需要明确地调用"跟踪"代数.

另外,请注意source原始fetchById呼叫上的参数:它仅用于跟踪.我更愿意从API中删除它.

这是实际问题:如何建模跟踪?

functional-programming scala free-monad scala-cats

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

错误:不要覆盖object.Finalize.相反,提供一个析构函数

在以下代码中获得上述错误.如何纠正它.谢谢.请找

protected override void Finalize() {     Dispose(false); } 
Run Code Online (Sandbox Code Playgroud)

在下面的代码中.

using Microsoft.Win32; 
using System.Runtime.InteropServices; 

public class Kiosk : IDisposable 
{ 

    #region "IDisposable" 

    // Implementing IDisposable since it might be possible for 
    // someone to forget to cause the unhook to occur. I didn't really 
    // see any problems with this in testing, but since the SDK says 
    // you should do it, then here's a way to make sure it will happen. 

    public void Dispose() 
    { 
        Dispose(true); 
        GC.SuppressFinalize(this); 
    } 

    protected virtual …
Run Code Online (Sandbox Code Playgroud)

c# destructor idisposable finalizer

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

从WPF应用程序验证ASP.NET MVC用户

如何验证ASP.NET MVC应用程序的用户(使用用户名和密码)?我正在尝试使用WebClient,传递NetworkCredentials,从我的WPF客户端将请求发布到ASP.NET MVC应用程序.如何在服务器上处理此请求?我如何获得通过的用户名和密码?

我在ASP.NET MVC应用程序中使用表单身份验证(使用新项目创建的默认值).

authentication wpf asp.net-mvc webclient networkcredentials

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

使用foreach将字符串[]转换为字符串

string x;
foreach(var item in collection)
{
   x += item+",";
}
Run Code Online (Sandbox Code Playgroud)

我可以用lambdas写这样的东西吗?

c# lambda

0
推荐指数
2
解决办法
281
查看次数

用bash脚本中的sed替换另一个文件中的字符串

我正在尝试从bash脚本替换环境变量定义的值(如果存在).我知道我可以sed用来做这个,但是,我不确定如何替换环境变量的值?

这是我想做的事情:

给定一个带有此行的文件(找到grep):

export MY_ENV=SOME_VALUE
Run Code Online (Sandbox Code Playgroud)

我想替换SOME_VALUE别的东西.我该怎么做sed

linux bash grep replace sed

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