草庐IT

this_and_that

全部标签

c# - 林克 : Delete and Insert same Primary Key values within TransactionScope

我想在一个事务中用新记录替换数据库中的现有记录。使用TransactionScope,我有using(varscope=newTransactionScope()){db.Tasks.DeleteAllOnSubmit(oldTasks);db.Tasks.SubmitChanges();db.Tasks.InsertAllOnSubmit(newTasks);db.Tasks.SubmitChanges();scope.Complete();}我的程序抛出System.InvalidOperationException:Cannotaddanentitythatalreadyexis

c# - 在 LINQ 中加入多个 where 子句作为 OR 而不是 AND

有没有加入LINQwhere子句作为OR?varints=new[]{1,3,5,7};varquery=fromiinintsselecti;query=query.Where(q=>q==3);query=query..Where(q=>q==7);我想要的是能够动态添加where子句但使它们使用OR而不是AND 最佳答案 如果您想继续使用强类型的Linq查询,您应该研究LinqKit和谓词构建。我已经将它用于类似的事情,并发现它与过滤器的And/Or堆叠配合使用效果很好。查看C#4.0/3.0inaNutshellexcerp

c# - "Enum as immutable rich-object": is this an anti-pattern?

我经常看到并使用带有附加属性的枚举来做一些基本的事情,例如提供显示名称或描述:publicenumMovement{[DisplayName("TurnedRight")]TurnedRight,[DisplayName("TurnedLeft")][Description("Execute90degreeturntotheleft")]TurnedLeft,//...}并且有一组扩展方法来支持属性:publicstaticstringGetDisplayName(thisMovementmovement){...}publicstaticMovementGetNextTurn(thi

c# - 简易喷油器 : Registering a type with constructor argument that's based on its parent

我目前正在从我的项目中删除Ninject,并转而使用SimpleInjector,但有一件事我无法正常工作。对于我的日志记录,在注册服务时,我以前能够将参数传递到我的日志记录类中_kernel.Bind().To().WithConstructorArgument("name",x=>x.Request.ParentContext.Request.Service.FullName);我正在寻找一种在SimpleInjector中重新创建它的方法。到目前为止,除了这个,我还有其他所有工作。通过执行以下操作,我可以使日志记录正常工作,尽管没有显示正确的记录器名称:_container.Re

c# - 带有 Attach() 的 LINQ To SQL 异常 : Cannot add an entity with a key that is already in use

考虑这个典型的断开连接的场景:使用LINQToSQL从SQLServer加载客户对象用户编辑实体,表示层发回修改后的实体。数据层,使用L2S,必须将更改发送到SQLServer考虑这个LINQToSQL查询,其目的是获取客户实体。CustcustOrig=db.Custs.SingleOrDefault(o=>o.ID==c.ID);//gettheoriginaldb.Custs.Attach(c,custOrig);//wedon'thaveaTimeStamp=Truepropertydb.SubmitChanges();DuplicateKeyException:Cannota

c# - 在嵌套 If 中应用两个条件或将单个条件与 And 结合使用哪个更好?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。Improvethisquestion嵌套If或单个ifwithAnd运算符,哪种方法更好?单个If和if(txtPackage.Text!=string.Empty&&txtPackage.Text=="abc"){//}嵌套if(txtPackage.Text!=string.Empty){if(txtPackage.Text=="abc"){//}}

c# - 构造函数中 "this"关键字的作用是什么?

我刚才在看MSDN的示例代码,偶然发现了:namespaceIListSourceCS{publicclassEmployee:BusinessObjectBase{privatestring_id;privatestring_name;privateDecimalparkingId;publicEmployee():this(string.Empty,0){}// 最佳答案 它使用该签名调用该类中的其他构造函数。它是一种根据其他构造函数实现构造函数的方法。base也可以用来调用基类的构造函数。您必须有一个与此匹配的签名构造函数才能

c# - 面向对象编程 : Separation of Data and Behavior

最近我们讨论了类中的数据和行为分离。通过将域模型及其行为放入单独的类中来实现数据和行为分离的概念。但是,我不相信这种方法的假定好处。尽管它可能是由某个“伟人”创造的(我认为是MartinFowler,尽管我不确定)。我在这里举一个简单的例子。假设我有一个包含Person及其方法(行为)数据的Person类。classPerson{stringName;DateTimeBirthDate;//constructorPerson(stringName,DateTimeBirthDate){this.Name=Name;this.BirthDate=BirthDate;}intGetAge(

c# - Entity Framework : The context is being used in Code First mode with code that was generated from an EDMX file

我正在使用EF6数据库优先方法开发一个WPF应用程序,我的解决方案中有一个项目,如果我运行我的项目,这个错误总是出现。上下文在代码优先模式下使用,代码是从数据库优先或模型优先开发的EDMX文件生成的。这将无法正常工作。要解决此问题,请不要删除引发此异常的代码行。如果您希望使用数据库优先或模型优先,请确保EntityFramework连接字符串包含在启动项目的app.config或web.config中。如果您要创建自己的DbConnection,请确保它是一个EntityConnection而不是其他类型的DbConnection,并且您将它传递给采用DbConnection的基本Db

C#.NET : Convert Icon to byte[] and back again

如何在System.Drawing.Icon类型和byte[]之间进行转换?我正在寻找可以(希望)在.NET2中工作的简单方法。 最佳答案 你通过MemoryStream,基本上:publicstaticbyte[]IconToBytes(Iconicon){using(MemoryStreamms=newMemoryStream()){icon.Save(ms);returnms.ToArray();}}publicstaticIconBytesToIcon(byte[]bytes){using(MemoryStreamms=ne