我在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包含薪水检查的详细信息?
我有一个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.
这可能吗?
我正在尝试使用 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)
但它没有给我我想要的东西,而且我没有看到添加小计的选项。
我怎样才能实现这个目标?
我在 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