TOGOUTECH

c# - NHibernate - 对于分离的父实体,级联合并到子实体失败

当前方法在ASP.NET网络表单应用程序(使用Spring.NET和NHibernate)中,我们有一个聚合根(Person),其详细信息在多个屏幕/页面上被捕获。Person实体在进入此工作流之前就已存在,并且对Person对象图所做的所有更改都是原子的,因此仅应在提交最终结果时刷新到数据库屏幕。为了实现这一点,我们第一次使用NHibernate3.2从数据库中加载Person(延迟)到第一页,然后我们加载并保存序列化的Person在我们通过过程分页时将对象图转换为HTTPsession变量。从HTTPsession中检索到Person后,它处于与当前NHibernatesessio

c# - C#/Unity 中的构造函数注入(inject)?

我将C#与Microsoft的Unity框架结合使用。我不太确定如何解决这个问题。这可能与我对Unity的DI缺乏了解有关。我的问题可以用下面的示例代码来总结:classTrain(Personp){...}classBus(Personp){...}classPerson(stringname){...}Persondad=newPerson("joe");Personson=newPerson("timmy");当我在Bus上调用resolve方法时,如何确定注入(inject)了名为“timmy”的人“son”,在解析Train时如何确定名为“jo

c# - 重构别人源码的礼仪?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭1年前。Improvethisquestion我们的软件开发人员团队由一群经验丰富的程序员组成,他们具有各种编程风格和偏好。我们没有万事万物的标准,只有防止全面困惑的基本必需品。最近,我碰到了同事做的一些重构。我的代码看起来有点像这样:publicPersonCreateNewPerson(stringfirstName,stringlastName){varperson=newPerson(){FirstName=firstName

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

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

c# - 数据绑定(bind)到 ComboBox 中的 CollectionViewSource 时如何保留 CurrentItem 的双向绑定(bind)

假设我们有一个简单的VM类publicclassPersonViewModel:Observable{privatePersonm_Person=newPerson("Mike","Smith");privatereadonlyObservableCollection<Person>m_AvailablePersons=newObservableCollection<Person>(newList<Person>{newPerson("Mike","Smith"),newPerson(&

c# - 是否可以防止 Entity Framework 4 覆盖自定义属性?

我首先使用EF4数据库+POCO。因为EF没有简单的方法来声明传入的DateTimes是UTC类型,所以我将该属性从自动生成的文件移动到另一个文件中的分部类。privateDateTime_createdOn;publicvirtualSystem.DateTimeCreatedOn{get{return_createdOn;}set{_createdOn=(value.Kind==DateTimeKind.Unspecified)?_createdOn=DateTime.SpecifyKind(value,DateTimeKind.Utc):value;}}但是,现在每次我更新模型时

c# - 创建一个 Action<T> 到 "set"属性,当我为 "get"提供 LINQ 表达式时

我希望能够生成编译表达式来设置属性,给定为属性提供“get”方法的lambda表达式。这是我正在寻找的:publicAction<int>CreateSetter<T>(Expression<Func<T,int>>getter){//returnsacompiledactionusingthedetailsofthegetterexpressiontree,ornull//ifthewritepropertyisnotdefined.}我仍在努力理解各种类型的Expression类,因此,如果您能为我指明正确的方向,那就太好了。

c# - 按字母顺序插入列表 C#

谁能教我如何在C#中按字母顺序将项目插入列表中?所以每次我添加到列表中时我都想按字母顺序添加一个项目,理论上列表会变得非常大。示例代码:PublicClassPerson{publicstringName{get;set;}publicstringAge{get;set;}}PublicClassStorage{privateList<Person>people;publicStorage{people=newList<Person>();}publicvoidaddToList(personPerson){intinsertIndex=movies.findi

c# - 一行中的多个对象

我有一行来自数据库select"John"Name,"Male"Gender,20Age,"Rex"PetName,"Male"PetGender,5PetAge//...manymore...使用Dapper,我想将这一行拉入两个对象:classPerson{publicstringName{get;set;}publicstringGender{get;set;}publicintAge{get;set;}//...manymore...}classPet{publicstringPetName{get;set;}pu

c# - 我需要在 OnModelCreating(DbModelBuilder modelBuilder) 函数中添加什么来定义 Person 和 Role 之间的关系?

我在WinForms项目.net4.5中使用EntityFramework5.0版。我已经为我创建了2个重要的实体publicclassRole{[Key][DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]publicintId{get;set;}publicstringName{get;set;}publicboolStockPermission{get;set;}publicboolItemPermission{get;set;}publicboolOrderPermission{get;set;}publi