草庐IT

nhibernate-mapping-by-code

全部标签

c# - NHibernate 异常 : Transaction not connected, 或已断开连接

在我们的开发环境中,所有ASP.NET应用程序都运行良好。但是,当我在测试机器上部署站点时,在某些页面上出现此异常:NHibernate.TransactionException:Transactionnotconnected,orwasdisconnectedatNHibernate.Transaction.AdoTransaction.CheckNotZombied()ind:\CSharp\NH\NH\nhibernate\src\NHibernate\Transaction\AdoTransaction.cs:line406atNHibernate.Transaction.Ad

c# - 简单注入(inject)器 : Register ILogger<T> by using ILoggerFactory. CreateLogger<T>()

我正在处理一个使用简单注入(inject)器作为依赖注入(inject)器的项目。另一方面,该项目使用Microsoft.Extensions.Logging来记录某些类中发生的事件。我的技术问题很容易解释。我想在我的DI中独立于正在调用的类T注册ILogger,但是我确实需要从我的ILoggerFactory.CreateLogger()中完成它方法,因为这会使用Microsoft.Extensions.Configuration获取记录器配置.我需要使用这样的东西来实例化我的记录器:privateMicrosoft.Extensions.Logging.ILoggerCreateL

c# - 如何使用 Entity Framework 4 Code First (POCO) 声明一对一关系

如何使用EntityFramework4CodeFirst(POCO)声明一对一关系?我找到了thisquestion(one-to-onerelationshipsinEntityFramework4),但是答案引用的那篇文章没有用(有一行代码是一对一的关系,但是没有提到如何定义)。 最佳答案 三种方法:A)声明两个具有导航属性的类。用ForeignKey属性标记其中一个表(从属表)的主键。EF从中推断出1对1:publicclassAppUser{publicintId{get;set;}publicstringUsername

c# - 将 CreateMap 和 Map 的实例版本与 WCF 服务一起使用?

automapper遇到了一些实际问题。我想我已经找到了解决方案,但不确定如何实现。基本上,我使用带有ResolveUsing和ConstructedBy的自定义映射将参数传递给构造函数,我知道大多数人只在global.asax中设置了一次就忘记了它。但问题是我的方法(在wcf上)将不同的参数传递给ResolveUsing的构造函数......在我使用静态方法Mapper.CreateMap和Mapper.Map之前,当不同的请求通过方法(多用户)进入wcf服务时,它们似乎相互冲突。阅读一些内容后,我似乎可以使用CreateMap和Map的实例版本,这样每个单独的请愿书都可以获得自己的

c# - 在 VS Code 中禁用特定的编译器警告

我想知道如何在VSCode中为整个项目抑制特定的编译器警告。我看过这个问题:Isitpossibletodisablespecificcompilerwarnings?但它适用于VisualStudio,而不适用于VisualStudioCode。以下是上面链接的问题中推荐的答案:1.SolutionExplorer>View>Properties>Build>SuppressWarnings和2.#pragmawarningdisablewarning-list对于#1:我在VSCode中的任何地方都找不到解决方案资源管理器。对于#2这只有在我将它包含在每个脚本的顶部时才有效。我需要

c# - NHibernate.Spatial 和 Sql 2008 地理类型

我目前正在从事一个项目,我必须处理sqlserver2008地理类型。由于项目的很大一部分使用NHibernate作为ORM,我想知道使用/扩展NHibernate.Spatial这种类型需要做多少工作(据我所知,NhSpatial仅支持几何类型)。顺便提一句。是否有其他支持此sql类型的.netORM?谢谢 最佳答案 我不是特别了解空间,但您始终可以扩展NHibernate来处理您的自定义类型,这非常简单(请参阅NHibernateCustomMappingTypes)但问题是您必须解释如何处理地理类型以NHibernate(参见

c# - 如何在 WPF 中构建 "word-by-word"自动完成?

我已经做了一些研究并最终得到了几个自动完成框,它们有一个共同点:它们都匹配输入的整个表达式。有时,它们似乎很容易扩展,但最终却并非如此。但是,我需要一个允许用户输入单词(例如“tag1”)的文本框,显示一个带有一些建议的弹出窗口基于这个单词,使用返回键接受建议并在同一个文本框中输入一个新词(例如“tag1tag2”),弹出窗口再次弹出。(我喜欢CintaNotes处理这个的方式)我需要这个用于标记界面。用户将标签写入一个简单的框中通常会更快,但有时,他需要帮助。这就是自动完成的用途。我发现了一些结果,但不符合我的目的(恕我直言):http://www.wpfpedia.com/item

c# - 在 Entity Framework 4.1 版本中使用 Code-First 时性能极慢

我们公司正在开发一个新的应用程序,它的核心是一个比较大的业务数据对象。我们决定先用代码尝试EntityFramework,以从应用程序中抽象出数据库,但事情出了差错。业务对象由大约60个类组成,总共大约600个属性;然而,它是一个树结构,不存在交叉/回溯指针。我们的测试是向数据库添加一个未初始化的类实例。在我们的数据结构上使用DbContext.Add在我的开发机器上花费了8分钟。这是这种大小的物体的预期性能吗?是否有导致EntityFramework性能不佳的常见问题列表?我觉得我需要一些帮助。一些更多的数据点:业务对象根下的第一层有27个元素。存在3个元素(其余元素已注释掉),添加

c# - 使用 NHibernate 对延迟加载的集合进行分页

我读了thisarticle其中Ayende指出NHibernate可以(与EF4相比):Collectionwithlazy=”extra”–LazyextrameansthatNHibernateadaptstotheoperationsthatyoumightrunontopofyourcollections.Thatmeansthatblog.Posts.Countwillnotforcealoadoftheentirecollection,butratherwouldcreatea“selectcount(*)fromPostswhereBlogId=1”statement,

c# - 在 Code First 的情况下使用 MetadataType 强制执行验证是否有意义?

我似乎理解了将MetadataTypeAttribute帮助到AddValidationtotheModel背后的原因如果是DatabaseFirst因为我们希望避免下次从数据库生成模型时覆盖更改。我注意到很少有人使用MetadataType定义验证,即使他们使用CodeFirst也是如此。方法,并且它们的实体类不可能被某种自动生成的代码覆盖。不直接将这些DataAnnotations应用于实际的实体类,而是将它们分成部分类定义,然后使用MetadataType进行链接是否有意义,即使在使用CodeFirst时也是如此定义实体模型的方法?publicclassMyEntity{[Req