【问题标题】:Update/Insert without select更新/插入而不选择
【发布时间】:2010-05-26 06:26:46
【问题描述】:

我有一个非常简单的类

public class ProductAttributeValuePortal
{
   public virtual int ID { get; set; }
   public virtual Domain.Entity.Portals.ProductPortal Product { get; set; }
   public virtual Attribute Attribute { get; set; }
   public virtual string Value { get; set; }

}

有了这张非常简单的地图

    public ProductAttributeValueMap ()
    {
        Table("DM.dbo.ProductAttributeValues");
        Id(x => x.ID, "ProductAttributeValue_id");
        References(x => x.Product);
        References(x => x.Attribute);
        Map(x => x.Value);
    }

每次我进行插入时,NHibernate 都会对属性进行选择,例如:

    NHibernate: INSERT INTO MachineData.dbo.ProductAttributeValues (Value, Product_id,          
    Attribute_id) VALUES (@p0, @p1, @p2); select SCOPE_IDENTITY();@p0 = '6745', @p1 =  39, @p2 = 'BSTD'
    NHibernate: SELECT attribute_.Attribute_id, attribute_.Name as Name21_,   attribute_.AttributeType as Attribut3_21_, attribute_.TagName as TagName21_,   attribute_.MapTo as MapTo21_ FROM MachineShared.dbo.Attributes attribute_ WHERE   attribute_.Attribute_id=@p0;@p0 = 'DLB'

我做错了什么。我在哪里可以找到一些关于 nhibernate/Fluent nhibernate 的最新书籍

【问题讨论】:

  • 能否请您展示一下 Attribute 类及其映射?

标签: nhibernate


【解决方案1】:

ID 是如何分配的?如果是identity,那么NHibernate就得回DB获取ID字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-20
    • 1970-01-01
    • 2018-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 1970-01-01
    相关资源
    最近更新 更多