I am learning NHibernate but could not. I feel the error messages are inaccurate.
Please, help.
error message
The following types may not be used as proxies: SecondSolution.Domain.Product: method get_Id should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method set_Id should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method get_Name should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method set_Name should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method get_Category should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method set_Category should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method get_Discontinued should be 'public/protected virtual' or 'protected internal virtual' SecondSolution.Domain.Product: method set_Discontinued should be 'public/protected virtual' or 'protected internal virtual' at NHibernate.Cfg.Configuration.ValidateEntities() in c:\Users\oskar.berggren\Documents\Projects\nhibernate-core-3\src\NHibernate\Cfg\Configuration.cs:line 1052 at NHibernate.Cfg.Configuration.Validate() in c:\Users\oskar.berggren\Documents\Projects\nhibernate-core-3\src\NHibernate\Cfg\Configuration.cs:line 959 at NHibernate.Cfg.Configuration.BuildSessionFactory() in c:\Users\oskar.berggren\Documents\Projects\nhibernate-core-3\src\NHibernate\Cfg\Configuration.cs:li ne 1251 at SecondSolution.Program.Main(String[] args) in C:\vs_workspace\SecondSolution\SecondSolution\Program.cs:line 22 Press any key to continue . . .
Class file
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SecondSolution.Domain { class Product { public Product() { this.Name = "John"; } public Guid Id { get; set; } public string Name { get; set; } public string Category { get; set; } public bool Discontinued { get; set; } } }
display
<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="SecondSolution" namespace="SecondSolution.Domain"> <class name="Product"> <id name="Id"> <generator class="guid" /> </id> <property name="Name" /> <property name="Category" /> <property name="Discontinued" /> </class> </hibernate-mapping>
configurations:
<?xml version="1.0" encoding="utf-8" ?> <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"> <session-factory> <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property> <property name="dialect">NHibernate.Dialect.MsSqlCeDialect</property> <property name="connection.driver_class">NHibernate.Driver.SqlServerCeDriver</property> <property name="connection.connection_string">Data Source=FirstSample.sdf</property> <property name="show_sql">true</property> </session-factory> </hibernate-configuration>
main class
static void Main(string[] args) { try { Configuration cfg = new Configuration(); cfg.Configure("Mappings/hibernate.cfg.xml");
user595234
source share