草庐IT

entity-system

全部标签

C# I/O - System.IO.File 和 StreamWriter/StreamReader 之间的区别

假设我只对处理文本文件感兴趣,那么与StreamWriter相比,System.IO.File方法有哪些具体优势或劣势?是否涉及任何性能因素?基本区别是什么,在什么情况下应该使用哪些?还有一个问题,如果我想将一个文件的内容读入一个字符串并对其运行LINQ查询,哪个最好? 最佳答案 在File类中看似重复的方法背后有一段有趣的历史。它是在对.NET的预发布版本进行可用性研究之后产生的。他们请了一群有经验的程序员编写代码来操作文件。他们以前从未接触过.NET,只是有文档可以使用。成功率为0%。是的,有区别。当您尝试读取一个GB或更大的文

c# - 将 system.array 对象转换为 int[] 字符串或其他类型的对象

我正在学习C#并试图理解它的“面向类型”方面。所以前几天我需要从一个方法中接收一个System.Array对象。然后我尝试使用它的单个对象,所以我尝试用索引来解决它。编译器不让,说System.Array对象不支持索引。但是Array不是所有数组的基类吗(System.Arrayonmsdn)?为什么int[]支持索引而Array[]不支持?下面是一些代码来演示这个问题:int[]intArray={1,2,3,4,5,6,7,8,9,10};intt;ArraysysArray;Console.WriteLine("{0}",intArray.GetType().ToString()

c# - Entity Framework 迁移 NuGet 错误

使用VisualStudio2013ExpressPreviewforWeb和EntityFramework5尝试启用迁移时出现以下错误:PM>Enable-MigrationsSystem.IO.FileNotFoundException:Couldnotloadfileorassembly'Microsoft.VisualStudio.Shell,Version=10.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a'oroneofitsdependencies.Thesystemcannotfindthefilespeci

c# - 如何使用 Entity Framework 对 LocalDB 表进行 RESEED?

有什么方法可以使用EFRESEEDLocalDB表吗?我不想使用这个SQL命令:DBCCCHECKIDENT('TableName',RESEED,0)仅供引用:我使用的是EF6.1。非常感谢。 最佳答案 我假设您正在尝试重置表上的主键?如果是这样,则EF中没有办法执行此操作。如您所述,您必须使用SQL命令,例如:context.Database.ExecuteSqlCommand("DBCCCHECKIDENT('TableName',RESEED,0)")但我不得不问你为什么要尝试这样做?主键字段中的值对您来说无关紧要。

c# - Entity Framework 6 Create() 与 new

这两种方式添加实体有什么区别?MyEntityme=newMyEntity();entities.myentities.Add(me);对比MyEntityme=entities.myentities.Create();第二个例子还需要加“我”吗?如果是这样,是否有某种优势,无论是一种方式还是另一种方式?非常感谢! 最佳答案 MyEntityme=newMyEntity();将创建一个新的MyEntity实例MyEntityme=entities.myentities.Create();将创建MyEntity的代理包装实例(假设您的

c# - 为什么 Entity Framework 不能在 LINQ 语句中使用 ToString()?

这在LINQ-to-SQL中有效:varcustomersTest=fromcindb.Customersselectnew{Id=c.Id,Addresses=fromaindb.Addresseswherec.Id.ToString()==a.ReferenzIdselecta};foreach(varitemincustomersTest){Console.WriteLine(item.Id);}但是EntityFramework中的一个类似示例收到一条错误消息,基本上说它无法“将其转换为SQL”,这是德语中的原始错误消息:"'LINQtoEntities'erkenntdieM

c# - XDocument + IEnumerable 导致 System.Xml.Linq.dll 内存不足异常

基本上我有一个程序,当它开始时加载一个文件列表(如FileInfo),并为列表中的每个文件加载一个XML文档(如XDocument).程序然后从其中读取数据到容器类(存储为IEnumerables),此时XDocument超出范围。程序然后将数据从容器类导出到数据库。然而,在导出容器类超出范围后,垃圾收集器并未清理容器类,因为它存储为IEnumerable,似乎导致了XDocument留在内存中(不确定这是否是原因,但任务管理器显示XDocument中的内存未被释放)。由于程序循环遍历多个文件,最终程序抛出内存不足异常。为了缓解这种情况,我最终使用了System.GC.Collect(

c# - Linq to Entity AcceptAllChanges 保存更改

以下有什么区别:db.AcceptAllChanges();//vsdb.SaveChanges();db.AddToCustomer()//vsdb.Customers.AddObject(Mycustomer);以及为什么有db.Customers.DeleteObject(Mycustomer);而没有db.DeleteFromCustomer(Mycustomer);我应该什么时候使用它们?EntityFramework也是线程安全的吗?我的意思是,如果两个线程同时更新上下文中的对象,它会崩溃吗?提前致谢 最佳答案 db.A

c# - Entity Framework : When to use Set<>

我正在尝试了解EntityFramework的基础知识,但我对DbContext上的Set方法有疑问。我正在为以下问题使用数据库优先模型。假设我有一个ActivityLog数据库,我可以使用它来提取消息(例如NLog消息)。我可以编写一些代码来提取所有消息,如下所示:using(varentities=newActivityLogEntities())foreach(varloginentities.AcitivityLogs)Console.WriteLine(log.Message);但是我也可以这样做:using(varentities=newActivityLogEntitie

c# - 无法将类型 'bool' 隐式转换为 'system.threading.tasks.task bool'

我在服务实现代码中遇到此错误:“无法将类型‘bool’隐式转换为‘system.threading.tasks.taskbool’”。你能更正我的代码吗?publicTasklogin(stringusn,stringpwd){DataClasses1DataContextauth=newDataClasses1DataContext();varmessage=frompinauth.Userswherep.usrName==usn&&p.usrPass==pwdselectp;if(message.Count()>0){returntrue;}else{returnfalse;}}