Pedroca
unread,Apr 16, 2008, 8:47:21 AM4/16/08Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to NHibernate-Br
Bom Dia, Implementei um exemplo utilizando NHibernate e estou tendo
problemas com uma classe, acho que a implementei errado ou alguma
coisa. O que acontece é que consigo Inserir e Listar (sem where)
normalmente mas quando tendo utilizar o session.Get ou o Create query
com o Where dá pau. Vou colocar a qui a implementação das classes e o
banco.
Por favor me ajudem estou desesperado.
Obrigado.
public class Inss
{
//Declarações dos atributos da classe.
private int _codigo;
private string _nome;
private int _fPas;
private int _codigoTerceiros;
private string _codigoAcidenteTrabalho;
private decimal _contribuicaoEmpresa;
private decimal _acidenteTrabalho;
private decimal _terceiros;
private PagamentoInss _pagamentoInss;
public virtual int Codigo
{
get { return _codigo; }
set { _codigo = value; }
}
public virtual string Nome
{
get { return _nome; }
set { _nome = value; }
}
public virtual int FPas
{
get { return _fPas; }
set { _fPas = value; }
}
public virtual int CodigoTerceiros
{
get { return _codigoTerceiros; }
set { _codigoTerceiros = value;}
}
public virtual string CodigoAcidenteTrabalho
{
get { return _codigoAcidenteTrabalho;}
set { _codigoAcidenteTrabalho = value; }
}
public virtual decimal ContribuicaoEmpresa
{
get { return _contribuicaoEmpresa; }
set { _contribuicaoEmpresa = value; }
}
public virtual decimal AcidenteTrabalho
{
get { return _acidenteTrabalho; }
set { _acidenteTrabalho = value; }
}
public virtual decimal Terceiros
{
get { return _terceiros; }
set { _terceiros = value; }
}
public virtual PagamentoInss PagamentoInss
{
get { return _pagamentoInss; }
set { _pagamentoInss = value; }
}
}
public class PagamentoInss
{
//Declaração dos Atributos da Classe
private string _codigo;
private string _descricao;
public virtual String Codigo
{
get { return _codigo; }
set { _codigo = value; }
}
public virtual string Descricao
{
get { return _descricao; }
set { _descricao = value; }
}
public virtual IList inssList
{
get{return _inssList;}
set{_inssList=value;}
}
public virtual String DescricaoConcat
{
get { return Convert.ToString(this.Codigo) + " - " +
this.Descricao; }
}
}
.HBMs
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Entidades.Inss, Entidades" table="tblInss" lazy="true">
<id name="Codigo" column="insCodigo" type="Int32">
<generator class="increment"/>
</id>
<property name="Nome" column="insNome" not-null="true"
type="String" />
<property name="FPas" column="insFpas" type="Int32" />
<property name="CodigoTerceiros" column="insCodigoTerceiros"
type="Int32" />
<property name="CodigoAcidenteTrabalho"
column="insCodAcidenteTrabalho" type="String" />
<property name="ContribuicaoEmpresa" column="insContribuicaoEmpresa"
type="Decimal" />
<property name="AcidenteTrabalho" column="insAcidenteTrabalho"
type="Decimal" />
<property name="Terceiros" column="insTerceiros" type="Decimal" />
<many-to-one name="PagamentoInss" column="insCodigoPagamentoInss" not-
null="true" fetch="join" cascade="save-update" />
</class>
</hibernate-mapping>
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Entidades.PagamentoInss,Entidades"
table="tblPagamentoInss" lazy="true">
<id name="Codigo" column="pgiCodigo" type="String">
<generator class="increment"/>
</id>
<bag name="inssList" table="tblInss" cascade="all" fetch="join"
inverse="true">
<key column="PK_INSS" />
<one-to-many class="Entidades.Inss,Entidades" />
</bag>
<property name="Descricao" column="pgiDescricao" type="String" />
</class>
E O SCRIPT DAS TABELAS
CREATE TABLE [dbo].[tblInss](
[insCodigo] [int] NOT NULL,
[insNome] [varchar](30) NULL,
[insFpas] [int] NULL,
[insCodigoTerceiros] [int] NULL,
[insCodAcidenteTrabalho] [char](9) NULL,
[insContribuicaoEmpresa] [numeric](4, 2) NULL,
[insAcidenteTrabalho] [numeric](4, 2) NULL,
[insTerceiros] [numeric](4, 2) NULL,
[insCodigoPagamentoInss] [char](4) NOT NULL,
CONSTRAINT [PK_INSS] PRIMARY KEY CLUSTERED
(
[insCodigo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY
= OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
ALTER TABLE [dbo].[tblInss] WITH CHECK ADD CONSTRAINT
[FK_INSS_PAGTO] FOREIGN KEY([insCodigoPagamentoInss])
REFERENCES [dbo].[tblPagamentoInss] ([pgiCodigo])
---------------
CREATE TABLE [dbo].[tblPagamentoInss](
[pgiCodigo] [char](4) NOT NULL,
[pgiDescricao] [varchar](255) NULL,
CONSTRAINT [PK_PAGTO_INSS] PRIMARY KEY CLUSTERED
(
[pgiCodigo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY
= OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]