小编Bla*_*rad的帖子

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

C#函数包含静态数据

在VB.Net中,我可以将函数中的变量声明为Static,如下所示:

Function EncodeForXml(ByVal data As String) As String
    Static badAmpersand As Regex = new Regex("&(?![a-zA-Z]{2,6};|#[0-9]{2,4};)")

    data = badAmpersand.Replace(data, "&")

    ''// more processing

    return data
End Function
Run Code Online (Sandbox Code Playgroud)

请注意,我需要使用关键字Static,而不是Shared,这是在VB.Net中表达这一点的常用方法.我怎么能在C#中做到这一点?我找不到它的等价物.

.net c# vb.net

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

如何在IronPython中创建Web服务?

如何在IronPython中创建.Net Web服务?优选地,动态地没有任何预处理或后处理.

.net ironpython web-services

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

c#将用户设置存储在数据库中

是否有一种简单的方法可以将人的用户设置存储在sql 2000数据库中.理想情况下,所有设置都在一个字段中,因此每次添加设置时都不必编辑表格.如果有人举例,我正在考虑序列化设置类.

我不想使用存储在持久存储中的内置.NET用户设置的原因是工作使用超级强制配置文件,因此在用户注销时清除设置很麻烦.我之前发布了要求任何解决方案,但没有得到太多回应.

.net c# database repost

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

声明变量 - 最佳实践

我刚才发现(我想再次确认)如果你声明了一个类级变量,那么在调用类构造函数或load之前不应该调用它的构造函数.原因是性能 - 但还有其他原因可以做到这一点吗?这条规则有例外吗?

即:这是我根据我认为的最佳做法做的事情:

public class SomeClass
{
   private PersonObject _person;

   public SomeClass()
   {
      _person = new PersonObject("Smitface");
   }
}
Run Code Online (Sandbox Code Playgroud)

反对:

public class SomeClass
{
   private PersonObject _person = new PersonObject("Smitface");

   public SomeClass()
   {

   }
}
Run Code Online (Sandbox Code Playgroud)

.net c#

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

以人类可读的文本格式序列化

在.NET 2.0(C#)中是否有一种方法可以像使用XmlSerializer那样以简单/可定制的人类可读格式(例如PXLS或JSON )来序列化对象?另外我知道XML是人类可读的,我正在寻找一些不那么令人讨厌的冗余的东西,你可以输出到用户的控制台.

.net c# serialization .net-2.0

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

C# - 裁剪透明/白色空间

我正在尝试从图像中删除所有白色或透明像素,留下实际图像(裁剪).我尝试了一些解决方案,但似乎都没有.有什么建议或者我打算过夜写图像裁剪代码?

c# asp.net gdi+ crop image-processing

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

1图像2链接

你如何使图像在图像的不同区域中以HTML格式点击并导致不同的URL ...例如我有一个图像或"按钮"如果你将是1图像但我希望它实际上是2链接...按钮的一侧是"注册"而另一侧是"试用"

html imagemap bitmap expression-web

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

Opencover可以与TypeMock Isolator一起使用吗?

我正在寻找一个.NET覆盖工具,并且一直在试用PartCover,并取得了不错的成功.我看到OpenCover旨在取代PartCover,但到目前为止我还无法将其与TypeMock Isolator链接,因此我的模拟测试在收集覆盖信息时通过.

我尝试复制Partcover的设置,但是没有定义的profilename与Isolator的"link"参数一起使用.考虑到OpenCover基于Partcover,我试图告诉Isolator链接Partcover,它没有抱怨(我仍然安装了Partcover),但链接不起作用 - Isolator认为它不存在.

我错过了一步吗?有解决方法吗?或者我必须等待与OpenCover成为朋友的隔离器版本?

opencover typemock-isolator

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

如何在谓词调用中测试与FakeItEasy的匹配?

我的代码中有以下调用:

var dbResults = new List<CrossReferenceRelationshipEF>();
dbResults = dateTimeFilter == null
    ? new List<CrossReferenceRelationshipEF>(
        CrossReferenceRelationshipRepository.GetAll()
                .ToList().OrderBy(crr => crr.ToPartner))
    : new List<CrossReferenceRelationshipEF>(
        CrossReferenceRelationshipRepository.SearchFor(
            crr => crr.HistoricEntries
                .Any(he => he.ModifiedDatetime > dateTimeFilter))
                .ToList().OrderBy(crr => crr.ToPartner));
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用FakeItEasy来验证当dateTimeFilter有一个值时,SearchFor(…)正在我的存储库中使用正确的函数调用它.

所以我的测试看起来像这样:

A.CallTo(() => crossReferenceRelationshipRepositoryMock.SearchFor(A<Expression<Func<CrossReferenceRelationshipEF,bool>>>.That
    .Matches(exp => Expression.Lambda<Func<DateTime>>(((BinaryExpression)exp.Body).Right).Compile().Invoke() == filterByDate)))
    .MustHaveHappened(Repeated.Exactly.Once);
Run Code Online (Sandbox Code Playgroud)

哪个不对.什么是测试我是否SearchFor(…)使用正确表达式调用的方法?

crr => crr.HistoricEntries.Any(he => he.ModifiedDatetime > dateTimeFilter)
Run Code Online (Sandbox Code Playgroud)

传入的实际值SearchFor(…)DateTime.MinValue因此我将断言更改为:

A.CallTo(() => crossReferenceRelationshipRepositoryMock.SearchFor(A<Expression<Func<CrossReferenceRelationshipEF, bool>>>.That
    .Matches(exp => Expression.Lambda<Func<DateTime>>(((BinaryExpression)exp.Body).Right).Compile().Invoke() == DateTime.MinValue)))
    .MustHaveHappened(Repeated.Exactly.Once);
Run Code Online (Sandbox Code Playgroud)

这是失败的,我得到的例外是

System.InvalidCastException:
  Unable to cast object of …
Run Code Online (Sandbox Code Playgroud)

c# lambda predicate fakeiteasy

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