Hi. This is a bug that did not occur in nhibernate 0.8 but does occur
in nHibernate 1.01:
I am adding xml mapping files to a Configuration:.
Configuration cfg = new NHibernate.Cfg.Configuration();
cfg.AddXmlFile (filename);
factory = cfg.BuildSessionFactory();
In the mapping file I have a base class Instrument, that
gets defined in the DATA assembly. I have a lot of subclasses
that get defined in the DATA assembly as well - these do work
fine. Then I have a other subclasses that gets defined in the PORTFOLIO
assembly - these do not work. This are the error messages I get:
ERROR NHibernate.Persister.GetSetHelperFactory [(null)] (:0) - Compiled
with error: using System; using NHibernate.Property; namespace NHibernate.Persister { public class GetSetHelper_myQUANT_OPTION_fOption : IGetSetHelper {
ISetter[] setters;
IGetter[] getters;
public GetSetHelper_myQUANT_OPTION_fOption(ISetter[] setters, IGetter[] getters) {
this.setters = setters;
this.getters = getters;
}
public void SetPropertyValues(object obj, object[] values) {
myQUANT.OPTION.fOption t = (myQUANT.OPTION.fOption)obj;
t.expirymonth = values[0] == null ? new System.Int32() : (System.Int32)values[0];
t.expirydate = values[1] == null ? new System.DateTime() : (System.DateTime)values[1];
t.optionexchange = (System.String)values[2];
t.optiontype = (System.String)values[3];
t.strikeprice = values[4] == null ? new System.Single() : (System.Single)values[4];
t.underlying = (System.String)values[5];
t.multiplyer = values[6] == null ? new System.Single() : (System.Single)values[6];
t.expiryyear = values[7] == null ? new System.Int32() : (System.Int32)values[7];
t.CUSIP = (System.String)values[8];
t.type = (System.String)values[9];
t.ISIN = (System.String)values[10];
t.WKN = (System.String)values[11];
t.name = (System.String)values[12];
}
public object[] GetPropertyValues(object obj) {
myQUANT.OPTION.fOption t = (myQUANT.OPTION.fOption)obj;
object[] ret = new object[13];
ret[0] = t.expirymonth;
ret[1] = t.expirydate;
ret[2] = t.optionexchange;
ret[3] = t.optiontype;
ret[4] = t.strikeprice;
ret[5] = t.underlying;
ret[6] = t.multiplyer;
ret[7] = t.expiryyear;
ret[8] = t.CUSIP;
ret[9] = t.type;
ret[10] = t.ISIN;
ret[11] = t.WKN;
ret[12] = t.name;
return ret;
}
}
}
2005-12-20 20:33:53,897 [2352] ERROR NHibernate.Persister.GetSetHelperFactory [(null)] (:0) - Line:0, Column:0 Message:Die referenzierte Klasse 'myQUANT.OPTION.fOption' hat eine Basisklasse oder Schnittstelle 'myQUANT.DATA.fInstrument', die in einer nicht referenzierten Assembly definiert ist. F
|