我有一个从另一个系统导出的CSV文件,其中列顺序和定义可能会更改.我发现FileHelpers非常适合读取csv文件,但是除非在编译应用程序之前知道列的顺序,否则它似乎无法使用它.我想知道它是否可以以非类型的方式使用FileHelpers.目前我正在使用它来读取文件但是我正在手工做的其他事情,所以我有一个类:
[DelimitedRecord(",")]
public class CSVRow
{
public string Content { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这意味着每一行都在Content其中,这很好,因为我已经分割了行等,但由于文件中固有的逗号,我现在遇到此方法的问题,因此一行可能是:
"something",,,,0,,1,,"something else","","",,,"something, else"
Run Code Online (Sandbox Code Playgroud)
我对这个字符串上的逗号的简单拆分不起作用,因为在"某些东西"中有一个逗号,它会被拆分.显然,FileHelpers之类的东西非常方便,解析这些值并考虑引号.那么有可能以这种方式使用FileHelpers,没有已知的列定义,或者至少能够传递csv字符串并获取值列表,或者是否有任何好的库来执行此操作?
我最近升级到Visual Studio 2012和SQL Server Management Studio 2012,但我似乎无法看到如何在SQL Server CE 4.0数据库上执行SQL脚本(由Entity框架创建).使用VS2010 + SSMS 2008,Transact-SQL编辑器会要求连接,您可以浏览到该对象,但是此选项在SSMS 2012中不可用.
我试图通过Server Explorer - > New Query窗口执行脚本,但是我得到了解析错误.有线索吗?
entity-framework sql-server-ce sql-server-2012 visual-studio-2012
我有很多系统使用WPF和MVVM.对于单元测试,我们将依赖项注入View模型,但是我发现在构造时注入依赖类时,我们无法控制依赖对象的生命周期,例如Entity Framework DbContext.
一个简单的场景如下:
public class FooVM
{
private readonly IBarService _barService;
// Set in the UI via Databinding
public string Name { get; set; }
public string OtherName { get; set; }
public FooVM(IBarService barService)
{
_barService = barService;
}
public void SaveFoo()
{
_barService.SaveFoo(Name);
}
public void SaveBar()
{
_barService.SaveBar(OtherName);
}
}
public class BarService : IBarService
{
private readonly IEntityContext _entityContext;
public BarService(IEntityContext entityContext)
{
_entityContext = entityContext;
}
public void SaveFoo(string name)
{
// some EF …Run Code Online (Sandbox Code Playgroud) c# entity-framework dependency-injection mvvm service-locator
我正在使用MVVM Light,我目前正在使用该软件包附带的SimpleIoC.我对依赖注入有点困惑.我想在视图模型中使用一堆服务,但是大多数窗口都是List-Edit范例,即一个屏幕列出所有类型Person,然后您可以Person通过新屏幕添加或编辑a .
当我在我的代码后面的代码中进行所有代码添加和编辑记录时如下:
视图
private void btnEdit_Click(object sender, RoutedEventArgs e)
{
_viewModel.Edit();
}
private void btnAdd_Click(object sender, RoutedEventArgs e)
{
_viewModel.Add();
}
Run Code Online (Sandbox Code Playgroud)
查看模型
public void Add()
{
var f = new TypeDetails();
f.Show();
}
public void Edit()
{
if (SelectedItem == null)
return;
var f = new TypeDetails(SelectedItem.Id);
f.Show();
}
Run Code Online (Sandbox Code Playgroud)
构造函数TypeDetails如下:
public TypeDetails(int id = 0)
{
InitializeComponent();
_viewModel = new TypeDetailsViewModel(id);
DataContext = _viewModel;
}
Run Code Online (Sandbox Code Playgroud)
使用MVVM Light实现此类型功能最好的是什么?我一直在使用ViewModelLocatorList屏幕的类,但是我看不到使用SimpleIoC的方法.到目前为止,我的方法是保持构造函数相同,这工作正常,直到我需要将依赖项注入到TypeDetailsViewModel服务中.使用服务的构造函数TypeDetailsViewModel …