草庐IT

nhibernate-mapping-by-code

全部标签

c# - 无法识别 Visual Studio Code Entity Framework 核心添加迁移

我使用yoman通过VisualStudio代码编辑器生成了一个ASP.NetCoreWebAPI应用程序。作为引用,我遵循了本教程here.API工作正常。但是,我正在尝试将EntityFrameworkCoreMigrations与SQLServer一起使用。当我在VisualStudioCode终端中键入以下内容时:Add-MigrationMyDbInitialMigration我收到以下消息:'Add-Migration'isnotrecognizedasaninternalorexternalcommand,operableprogramorbatchfile.我安装了Mi

c# - Code-First 应用程序中的 XML 列

我正在尝试在CodeFirst中创建一个XML列。我很清楚EntityFramework并不完全支持XML列,而是将它们作为字符串读取。没关系。不过,我仍然希望列类型为XML。这是我的类(class):classContent{publicintContentId{get;set;}[Column(TypeName="xml")]publicstringXmlString{get;set;}[NotMapped]publicXElementXml{get{...}set{...}}}问题是,CodeFirst迁移完全忽略了Column属性并将该字段创建为nvarchar(max)。我尝

c# - 生产应用程序的 PDB 文件和 "Optimize code"标志

我应该在什么时候为产品发布包含PDB文件?我应该使用Optimizecode标志吗?这将如何影响我从异常中获得的信息?如果有明显的性能优势,我会想使用优化,但如果没有,我宁愿有准确的调试信息。正式版应用通常会做什么? 最佳答案 如果您想在堆栈跟踪中查看源文件名和行号,请​​使用pdb-only选项生成PDB。优化与PDB生成是分开的,即您可以优化并生成PDB而不会影响性能。来自theC#LanguageReferenceIfyouuse/debug:full,beawarethatthereissomeimpactonthespee

c# - 将简单的 SQL group-by 转换为 LINQ to SQL

我遇到了麻烦。我无法理解StackOverflow上对此的现有答案,而且我对LINQtoSQL太陌生,无法自己解决。查看此SQL:selectp.NameasProductName,SUM(o.NumberOf)asTotalOrderedfrom[Order]ojoin[Product]pono.ProductId=p.Idgroupbyp.Name返回一个漂亮的2列表,左侧是产品名称,右侧列是已订购(所有订单)的产品总数。我如何在LINQtoSQL中复制它?这是我到目前为止所得到的:varctx=newDataClasses1DataContext();vartotalProduc

c# - LINQ to Entities Group By 表达式给出 'Anonymous type projection initializer should be simple name or member access expression'

我在这个表达式中遇到了上述错误:varaggregate=fromtinentities.TraceLinesjoinminentities.MethodNames.Where("it.NameLIKE@searchTerm",newObjectParameter("searchTerm",searchTerm))ont.MethodHashequalsm.MethodHashwhere(t.CallTypeId&(int)types)==t.CallTypeId&&t.UserSessionProcessId==m_SessionIdgrouptbym.Nameintodselect

c# - 使用 Nhibernate 时,检查 C# .Net 中的列表相等性不起作用

我似乎在检查列表相等性时遇到了问题。在我的例子中,我有两个角色对象,我想看看它们是否相等。每个角色都包含一个名称和一个权限列表。每个权限仅包含一个名称。publicclassRole:BaseDomain{virtualpublicStringName{get;set;}virtualpublicIListPermissions{get;set;}}publicclassPermission{virtualpublicStringName{get;set;}}我在Role和Permission对象上定义了一个equals方法。这些对象是使用Nhibernate从数据库中加载的。这意味着

c# - WPF 中类似 Google map 的滚动面板

我有一个Canvas,我正在其中绘制一堆形状和其他UI元素。这个Canvas可以非常大,所以我想把它放在一个面板中,它允许我使用鼠标放大/缩小并通过拖动鼠标滚动,就像谷歌地图一样。我能找到的最接近的东西是ScrollViewer,但显然这还不够接近。有没有人在WPF中做过这个并且有任何XAML和/或C#代码? 最佳答案 我askedlastweekDeepZoom是否计划用于WPF(因为它在Silverlight上可用)。我收到了指向此代码的链接,它听起来非常像您想要的解决方案:PanandZoominWPF

c# - NHibernate session 管理和延迟加载

我花了很多时间试图找出我在NHibernate中的session管理问题。我假设我的很多麻烦是由于缺乏对IoC和AOP概念的了解;至少我是这么想的,因为FabioMaulo一直在指导我。无论如何,我的问题是我有一个win表单应用程序正在进行“获取”调用并将结果绑定(bind)到网格。绑定(bind)后,用户可能会执行某种“写入”操作,这些操作会导致session在写入后关闭,以尝试使用session每次使用的概念。然后用户可能会滚动网格,这会导致延迟加载开始,现在session已关闭,我得到一个异常。我不想让我的View识别我的session,我不想在用户关闭表单时发送KillAllS

c# - LINQ 到 SQL : Delete entity (by ID) with one query

我使用LINQToSQL已经有一段时间了,当谈到从数据库中删除实体时,我总是调用表的.DeleteOnSubmit并传入实体。有时我发现自己在写类似这样的东西:db.Users.DeleteOnSubmit(db.Users.Where(c=>c.ID==xyz).Select(c=>c).Single());这当然会导致两个查询。一个获取符合条件的实体,然后另一个删除它。通常我有需要删除的记录的ID,我想知道是否有更直接的方法仅通过ID从表中删除行? 最佳答案 通过附加部分对象并将其删除,无需手动工具SQL即可执行此操作:varm

c# - DDD 与 EF Code First - 如何将它们放在一起?

学习DDD开发这几天,开始喜欢上了。我(认为我)了解DDD的原则,您的主要关注点是业务对象,您有聚合、聚合根、仅用于聚合根的存储库等等。我正在尝试创建一个将DDD开发与代码优先方法相结合的简单项目。我的问题是:(我正在使用asp.netMVC)DDD业务对象与CodeFirst对象不同吗?即使它们可能相同,例如我可以有一个包含所有规则和方法的Product业务对象,并且我可以先有一个Product代码(POCO)对象,它只包含我需要保存在数据库中的属性。如果问题1的答案是“真”,那么我如何通知ProductPOCO对象业务对象Product的属性已更改,并且我必须更新它吗?我正在使用“