草庐IT

c# - 来自sql查询执行 Entity Framework 的匿名类型结果

我正在使用EntityFramework5.0和.net框架4.0代码优先方法。现在我知道我可以通过以下操作在EntityFramework中运行原始sqlvarstudents=Context.Database.SqlQuery("select*fromstudent").ToList();它工作得很好,但我想要的是返回匿名结果。例如,我只想要学生表中的特定列,如下所示varstudents=Context.Database.SqlQuery("selectFirstNamefromstudent").ToList();它不起作用。它给出了异常(exception)Thedatare

c# - 来自sql查询执行 Entity Framework 的匿名类型结果

我正在使用EntityFramework5.0和.net框架4.0代码优先方法。现在我知道我可以通过以下操作在EntityFramework中运行原始sqlvarstudents=Context.Database.SqlQuery("select*fromstudent").ToList();它工作得很好,但我想要的是返回匿名结果。例如,我只想要学生表中的特定列,如下所示varstudents=Context.Database.SqlQuery("selectFirstNamefromstudent").ToList();它不起作用。它给出了异常(exception)Thedatare

c# - 在 DataGridView 中将 AutoSizeMode 设置为 AllCells 时出现 NullReferenceException

我手动将EntityFramework代码优先表绑定(bind)到数据GridView。当我将AutoSizeMode设置为AllCells并将一个实例添加到表中时,我在添加期间收到NullReferenceException。代码是这样运行的:dbContext.Persons.Load();myDataGridView.DataSource=dbContext.Persons.Local.ToBindingList();myDataGridView.Columns["Description"].AutoSizeMode=DataGridViewAutoSizeColumnMode.

c# - 在 DataGridView 中将 AutoSizeMode 设置为 AllCells 时出现 NullReferenceException

我手动将EntityFramework代码优先表绑定(bind)到数据GridView。当我将AutoSizeMode设置为AllCells并将一个实例添加到表中时,我在添加期间收到NullReferenceException。代码是这样运行的:dbContext.Persons.Load();myDataGridView.DataSource=dbContext.Persons.Local.ToBindingList();myDataGridView.Columns["Description"].AutoSizeMode=DataGridViewAutoSizeColumnMode.

c# - Entity Framework VS 纯 Ado.Net

EF是一个被广泛使用的人员,但我不知道我应该如何使用它。我在使用不同方法的不同项目中遇到了很多关于EF的问题。所以我脑子里汇集了一些问题。答案让我使用带有存储过程的纯ado.net。所以问题是:n层应用如何处理EF?例如,我们有一些带有EF的DAL。我看到很多文章和项目使用存储库、工作单元模式作为EF的某种抽象。我认为这种方法扼杀了提高开发速度的大部分好处,并导致了一些事情:EF负载的重新映射导致某些DTO会降低性能(调用一些选择以获取表数据-第一个循环,第二个循环-将结果映射到由ef生成的某些复合类型,接下来-使用linq过滤映射数据,最后,将其映射到某个DTO)。准确地重新映射到D

c# - Entity Framework VS 纯 Ado.Net

EF是一个被广泛使用的人员,但我不知道我应该如何使用它。我在使用不同方法的不同项目中遇到了很多关于EF的问题。所以我脑子里汇集了一些问题。答案让我使用带有存储过程的纯ado.net。所以问题是:n层应用如何处理EF?例如,我们有一些带有EF的DAL。我看到很多文章和项目使用存储库、工作单元模式作为EF的某种抽象。我认为这种方法扼杀了提高开发速度的大部分好处,并导致了一些事情:EF负载的重新映射导致某些DTO会降低性能(调用一些选择以获取表数据-第一个循环,第二个循环-将结果映射到由ef生成的某些复合类型,接下来-使用linq过滤映射数据,最后,将其映射到某个DTO)。准确地重新映射到D

c# - Entity Framework 如果不存在则添加不更新

我喜欢AddOrUpdate让您指定要检查的过滤器以避免添加重复项这一事实。但我想要没有更新的类似功能。现在我做这样的事情:varcheckProfile=frompindb.Profilewherep=>p.LastName==newProfile.lastName&&p=>p.FirstName==newProfile.firstName&&p=>p.Middle==newProfile.middleselectp;if(checkProfile.FirstOrDefault()==null){db.Profile.Add(newProfile);db.SaveChanges();

c# - Entity Framework 如果不存在则添加不更新

我喜欢AddOrUpdate让您指定要检查的过滤器以避免添加重复项这一事实。但我想要没有更新的类似功能。现在我做这样的事情:varcheckProfile=frompindb.Profilewherep=>p.LastName==newProfile.lastName&&p=>p.FirstName==newProfile.firstName&&p=>p.Middle==newProfile.middleselectp;if(checkProfile.FirstOrDefault()==null){db.Profile.Add(newProfile);db.SaveChanges();

c# - Entity Framework 如何查看 SaveChanges 方法的 SQL 语句

我曾经使用context.Log来跟踪LINQtoSQL生成的SQL语句,如SqlServerQueryVisualizer–CannotseegeneratedSQLQuery所示。context.Log=newOutputWindowWriter();对于EF,有没有类似上述方法的类似和简单的方法? 最佳答案 通常,您可以通过简单的方式连接内置跟踪器或任何记录器context.Database.Log=msg=>Trace.WriteLine(msg);在DbContext构造函数中。查看更多MSDN.MS的其他一些方法是her

c# - Entity Framework 如何查看 SaveChanges 方法的 SQL 语句

我曾经使用context.Log来跟踪LINQtoSQL生成的SQL语句,如SqlServerQueryVisualizer–CannotseegeneratedSQLQuery所示。context.Log=newOutputWindowWriter();对于EF,有没有类似上述方法的类似和简单的方法? 最佳答案 通常,您可以通过简单的方式连接内置跟踪器或任何记录器context.Database.Log=msg=>Trace.WriteLine(msg);在DbContext构造函数中。查看更多MSDN.MS的其他一些方法是her