小编Kri*_*s-I的帖子

使用 Moq 模拟存储库

为了模拟存储库,我使用下面的代码。我不明白为什么变量empl总是null.

你知道我错过了什么吗?

谢谢,

[TestMethod]
public void Test()
{
    var employee = new Employee { EmployeeID = 1, Code = "Code", FirstName = "MyFirstName", LastName = "MyName" };

    var employeeRepository = new Mock<IEmployeeRepository>();
    employeeRepository.Setup(x => x.Add(employee)).Verifiable();

    var employeeService = new EmployeeService(employeeRepository.Object);
    var empl = employeeService.GetById(1);

    Assert.IsNotNull(empl);
}

public class Employee
{
    public int EmployeeID { get; set; }
    public string Code { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; …
Run Code Online (Sandbox Code Playgroud)

c# unit-testing moq mocking repository

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

在IntegrationTests中实例化DbContext

在Startup.cs中的WebApi(.NET Core 2.0 + EF Core)项目中

public void ConfigureServices(IServiceCollection services)
{
    services.AddDbContextPool<MyContext>(options =>
        options.UseSqlServer(_config["ConnectionStrings:MyConnectionString"]));

    services.AddMvc();
}
Run Code Online (Sandbox Code Playgroud)

上下文:

public class MyContext : DbContext
{
    public MyContext(DbContextOptions<MyContext> options)
        : base(options)
    { }

    public MyContext()
    {
    }

    public DbSet<Employee> Employees { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我打电话给WebApi时没问题.

但在我的集成测试中,我想这样做:

[Fact]
void TestMethod()
{
    var context = new MyContext();

    var service = new MyService(context);

    var result = service.GetAll();//Error here

    Assert.True(result.Count() > 0);
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

没有为此DbContext配置数据库提供程序.可以通过覆盖DbContext.OnConfiguring方法或在应用程序服务提供程序上使用AddDbContext来配置提供程序

如何实例化上下文并指定要使用的连接字符串?

c# entity-framework entity-framework-core .net-core asp.net-core

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

使用Linq比较列表并获取值

我的对象是具有2个属性的“ MyClass”:Id(int)和HourBy(int)

我有两个清单:

var List1 = new List<MyClass>();
var List2 = new List<MyClass>();
Run Code Online (Sandbox Code Playgroud)

我想获得一个列表:-基于ID的List2中的List1中的对象来自Hourby(list2)<List1中的Hourby-List1中的对象不存在于List2中

//#Sample1
//List1 :
List1.add(new MyClass(1,10));
List1.add(new MyClass(2,20));
List1.add(new MyClass(3,30));
//List2 :
List2.add(new MyClass(1,10)); 
List2.add(new MyClass(2,15));
//I'd like to get :
new MyClass(2,5);
new MyClass(3,30);

//Sample2
List1 :
List1.add(new MyClass(1,10));
List1.add(new MyClass(2,20));
List1.add(new MyClass(3,30));
//List2 :
List2.add(new MyClass(1,10)); 
List2.add(new MyClass(2,15));
List2.add(new MyClass(2,2));
//I'd like to get :
new MyClass(2,3);
new MyClass(3,30);
Run Code Online (Sandbox Code Playgroud)

谢谢,

.net c# linq

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

Winforms:避免冻结应用程序

我在"大"文件上做了一些操作(大约4Mb)

我这样做:1.从目录中获取所有文件并将它们放在IList中MyInfoClass具有以下属性:name,extension,fullPath,creationDate,contentPart 2.我执行Linq查询以仅获取某些扩展类型.3.我循环Linq查询结果,对于每个,我打开文件,执行一些操作(获取值)并将结果放在MyFileIno.ContentPart中.

仅供参考:30个文件,这是一个14秒的操作

这是工作.

问题是,当我从UI运行我的库时,当我单击按钮时,窗口在操作期间冻结.我想要 :

  1. 解冻不冻结表格
  2. 看进度操作

你能给我解决这类问题的最佳实践吗?

谢谢,

public class FileManager 
{
    public string CurrentFileName { get; set; }
    public void Validation(string path)
    {
        IList<InfoFile> listFile = GetListFile(path);
        foreach (InfoFile item in listFile)
        {
            CurrentFileName = item.Name;
            .....
        }
    }
}


private void button1_Click(object sender, EventArgs e)
{
    var worker = new BackgroundWorker();
    worker.DoWork += (s, args) =>
    {
        int percentProgress = 6;
        FileManager fileManager = new FileManager();
        fileManager.Validation(@"C:.....");
        ((BackgroundWorker)s).ReportProgress(percentProgress, fileManager.CurrentFileName);
    };

    worker.ProgressChanged += (s, args) …
Run Code Online (Sandbox Code Playgroud)

c# performance winforms

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

使用jQuery进行字符串日期和字符串操作

我有一个字符串:30/09/2010我想要09/30/2010我可以使用jQuery吗?

谢谢,

jquery

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

检测格式日期

有没有办法,一个好方法,测试一个字符串是否比我想要转换的DateTimedd/MM/yyyyMM/dd/yyyy

谢谢,

c# datetime

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

使用LINQ管理null

有了这段代码

 var res = (from p in list where 
           p.FirstName.ToUpper() == firstName.ToUpper() || 
           p.LastName.ToUpper() == lastName.ToUpper() select p).ToList<Client>();
Run Code Online (Sandbox Code Playgroud)

p.FirstName或firstName可以为NULL,我该怎么办呢?

谢谢,

c# linq

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

ASP.NET MVC(razor)在jQuery中使用Model

我想在jQuery函数中依赖于模型的属性(使用带有razor的ASP.NET MVC 3):

jQuery.datepicker.setDefaults(jQuery.datepicker.regional['xx']);
Run Code Online (Sandbox Code Playgroud)

要么

jQuery.datepicker.setDefaults(jQuery.datepicker.regional['yy']);
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?

谢谢,

asp.net-mvc jquery jquery-ui razor

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

ASP.NET MVC 3应用程序中的jQuery UI重新加载选项卡内容

我想在ASP.NET MVC 3中重新加载每个选项卡我更改选项卡的选项卡内容,当我选择第一个选项卡(index = 0)时,我想重新加载内容.在选项卡中,它是一个ASP.NET MVC部分视图

我有这个代码:

<script type="text/javascript">
    $(function () {
        $('#tabs').tabs();
    });
</script>

<div id="tabs"> 
    <ul> 
        <li><a href="#tabs-1">AAAA</a></li> 
        <li><a href="#tabs-2">BBBB</a></li>
    </ul>

    <div id="tabs-1"> 
        @Html.Partial("PartialViewA", Model)
    </div> 
    <div id="tabs-2"> 
        @Html.Partial("PartialViewB", Model)
    </div> 

<div>
Run Code Online (Sandbox Code Playgroud)

你有好主意吗 ?

asp.net-mvc jquery jquery-ui

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

Linq:将值复制到另一个

我有一个这个对象的集合:

public Class MyObject()
{
    public int Id { get; set; }
    public int Code { get; set; }
    public string NL { get; set; }
    public string FR { get; set; }
    public string Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有这个

IList<MyObject> listObject = new List<Object>();
bool res = MyMethod();
Run Code Online (Sandbox Code Playgroud)

我想依赖res结果将FR的所有值复制到Value,如果res为false,则从NL复制到Value:

我试试这个:

var res = (from p in listObject select new { Id = p.Id, Value = ??????  });
Run Code Online (Sandbox Code Playgroud)

?????? reprsent我找不到的代码:(

任何的想法 ?

谢谢,

UPDATE1 我做了一个更通用的方法:

  public void MyTest<T>(IList<T> …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-objects

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