This will be corrected today.

On 9/26/06, Louwris, Wessel <[EMAIL PROTECTED]> wrote:
Thanks a lot, Don. This was the solution.

I've been searching on the list before to solve this,
but that was before your post :)

Should have been using the properties immediately of course...

Thank again. Wessel

Don Dwoske wrote:
> This is the bug I found last week (I believe).  Look back in the
> board for my message about using public fields.
>
> I included source code for the change which you would have to make in
> your own local copy (I compiled the source on my own to debug and
> find
> this) - I'm too busy to submit a bug report with a test case and
> patch right now...maybe someone else with free time can look at my
> message and do that to get this change incorporated into the code
> base.  I'm a newbie with C# and also generated code, so I'm not
> confident what I did is even makes sense - but it works - so that's
> all I care about.
>
> To fix your code so that it works with the existing code base - use
> properties with getters and setters and not public fields.
>
> -Don
>
>
> On 9/24/06, I wrote:
>> Hi,
>>
>> I'm trying to to get ibatis for .Net 1.1 to work with a
>> QueryForObject. A QueryForObject which returns a int (select(count))
>> works An Insert works, but the QueryForObject which should return
>> the object gives the following error message:
>>
>>
>> Exception Details: System.InvalidProgramException: Common Language
>> Runtime detected an invalid program.
>>
>> Source Error:
>>
>> An unhandled exception was generated during the execution of the
>> current web request. Information regarding the origin and location of
>> the exception can be identified using the exception stack trace
>> below.
>>
>> Stack Trace:
>>
>>
>> [InvalidProgramException: Common Language Runtime detected an
>>    invalid program.] SetForxsell.XsellRespondent2campaign.Set(Object
>> , Object ) +0
>>
>>
IBatisNet.Common.Utilities.Objects.Members.EmitFieldSetAccessor.Set(Ob
>> je ct target, Object value) +28
>>
>>
IBatisNet.DataMapper.DataExchange.DotNetObjectDataExchange.SetData(Obj
>> ec t& target, ResultProperty mapping, Object dataBaseValue) +111
>>
>>
IBatisNet.DataMapper.MappedStatements.PropertyStrategy.DefaultStrategy
>> .S et(RequestScope request, ResultMap resultMap, ResultProperty
>> mapping, Object& target, IDataReader reader, Object keys) +332
>>
>>
IBatisNet.DataMapper.MappedStatements.ResultStrategy.ResultMapStrategy
>> .P rocess(RequestScope request, IDataReader& reader, Object
>> resultObject) +306
>>
>>
IBatisNet.DataMapper.MappedStatements.MappedStatement.RunQueryForObjec
>> t( RequestScope request, IDalSession session, Object
>> parameterObject, Object resultObject) +136
>>
>>
IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForO
>> bj ect(IDalSession session, Object parameterObject, Object
>> resultObject) +88
>>
>>
IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForO
>> bj ect(IDalSession session, Object parameterObject) +10
>>    IBatisNet.DataMapper.SqlMapper.QueryForObject(String
>>    statementName, Object parameterObject) +146
>> xsell.wwwroot.form.Page_Load(Object sender, EventArgs e) in
>>    c:\projects\vod\xsell\wwwroot\form.aspx.cs:133
>>    System.Web.UI.Control.OnLoad(EventArgs e) +67
>>    System.Web.UI.Control.LoadRecursive() +35
>> System.Web.UI.Page.ProcessRequestMain() +750
>>
>>
>>
>>
>> My XsellRespondent2 class is like:
>> public class XsellRespondent2
>>         {
>>                 public string cust_id;
>>                 public string campaign;
>>                 public XsellRespondent2() {}
>>         }
>>
>> with the table:
>> create table xsell_respondents2 (
>> campaign varchar(100),
>> cust_id varchar(100)
>> )
>>
>>
>> And the statement is:
>>         <resultMaps>
>>                 <resultMap id="rSelectRespondent"
>> class="xsell.XsellRespondent2" >
>>                         <result property="campaign"
>>                         column="campaign" /> <result
>>         property="cust_id" column="cust_id" />
>> </resultMap> </resultMaps>
>>
>>   <statements>
>>
>>     <select id="GetByCustId" resultMap="rSelectRespondent"
>>                 parameterClass="string" > select campaign,cust_id
>>         from xsell_respondents where cust_id=#cust_id# </select>
>>
>>   </statements>
>>
>>
>>
>> I have no clue how te debug this thing. I guess some sort of
>> generated piece of code gives problems.But I hope somebody can help
>> me out here.
>>
>> btw: the NPetshop.Web seems to work so apparently it can be done, and
>> I am doing something wrong. But I dunno what.
>> btw2: this is running on XP but a Server 2003 machine gives the same
>> results (mssql 2000). Thanks a lot for any help.
>>
>> Wessel




--
Cheers,
Gilles

<a href="http://www.amazon.com/gp/registry/6JCP7AORB0LE";>Wish List</a>

Reply via email to