小编Mil*_*nMo的帖子

如何将数据表转换为相关数据集

我在DataTable中有非规范化数据.

数据包含员工姓名,以及他们在一系列薪资周期中获得的薪酬.即:

我的DataTable包含:

Employee 1    Jan-1-2012     $100
Employee 2    Jan-1-2012     $300
Employee 1    Feb-1-2012     $400
Employee 2    Feb-1-2012     $200
Employee 1    Mar-1-2012     $150
Employee 2    Mar-1-2012     $325
Run Code Online (Sandbox Code Playgroud)

如何将此数据加载到父DataTable包含员工姓名的DataSet中,子DataTable包含薪水检查的详细信息?

c# datatable dataset

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

MSBuild包含目录中的所有引用

我有一个MSBuild脚本,可以为DLL构建一个类库.

为了构建,我需要包含对几个dll的引用(即log4net.dll,Elmah.dll等).

目前,我的构建文件包含每个dll的路径,如下所示:

<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\log4net.dll" />
<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\Elmah.dll" />
<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\Microsoft.Practices.EnterpriseLibrary.Common.dll" />

etc. etc. etc.
Run Code Online (Sandbox Code Playgroud)

然后,在目标中,我有我的CSC:References ="@(Reference)"

这变得非常乏味.我想要做的是将所有依赖的dll放在文件系统上某个位置的单个目录中,然后传递一个到引用该目录,MSBuild将使用该目录中包含的dll.

这可能吗?

msbuild

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

封闭式XML大纲

我正在尝试使用 OpenXML 在导出的 Excel 工作簿中创建一个组。

我的源数据表如下所示:

Row     State   Product Sales
1       NY      A       100
2       NY      A       200
3       NY      B       300
4       CA      A       100
5       CA      A       200
6       CA      B       300
Run Code Online (Sandbox Code Playgroud)

我想按州创建一个大纲,然后按产品创建每个组的小计

我试过

 ws.Outline.SummaryVLocation = XLOutlineSummaryVLocation.Top;
 ws.Rows(1, 3).Group(); // Create an outline (level 2) for rows 1-4
 ws.Rows(4, 6).Group();
Run Code Online (Sandbox Code Playgroud)

但它没有给我我想要的东西,而且我没有看到添加小计的选项。

我怎样才能实现这个目标?

closedxml

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

C# Unity - 在运行时更改具体实现

我在 IoC 方面遇到了一些麻烦 - 特别是使用 Unity。

假设我有一个应用程序要用来发送电子邮件。我会像这样建模:

public interface IEmailSender
{
  void SendEmail();
}
Run Code Online (Sandbox Code Playgroud)

然后创建接口的一些实现:

public class GmailEmailSender : IEmailSender
{
  public void SendEmail()
  {
      //code to send email using Gmail
  }
}

public class YahooEmailSender : IEmailSender
{
  public void SendEmail()
  {
      //code to send email using Yahoo
  }
}
Run Code Online (Sandbox Code Playgroud)

我还有一门课来实际发送电子邮件

public class EmailSender
{
   IEmailSender _emailSender;
   public EmailSender(IEmailSender emailSender)
   {
       _emailSender= emailSender;
   }

   public void Send()
   {
      _emailSender.SendEmail();
   }
}
Run Code Online (Sandbox Code Playgroud)

所以我了解如何配置 Unity 以始终使用其中一种实现:

IUnityContainer container = new UnityContainer().RegisterType<IEmailSender, …
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection inversion-of-control unity-container

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