Thanks Mike.
The custom type handler for the SqlDbType.Structured that worked for me is as
simple as this:
/// <summary>
/// Custom Type Handler class for iBatis to support the Structured
SqlDbType in .NET which is
/// needed to support the Table Value Parameter (TVP) type in SQL2k8
/// </summary>
public class SQLStructuredTypeHandler : ITypeHandlerCallback
{
/// <summary>
/// Return the same value from the current getter
/// </summary>
/// <param name="getter"></param>
/// <returns></returns>
public object GetResult(IResultGetter getter)
{
return getter.Value;
}
/// <summary>
/// Return the nullable equivalent as null;
/// </summary>
public object NullValue
{
get { return null; }
}
/// <summary>
/// Set the SqlDbType to Structured and set the setter's value to the
parameter value
/// </summary>
/// <param name="setter"></param>
/// <param name="parameter"></param>
public void SetParameter(IParameterSetter setter, object parameter)
{
SqlParameter sqlp = (SqlParameter)setter.DataParameter;
sqlp.SqlDbType = SqlDbType.Structured;
setter.Value = parameter;
}
/// <summary>
/// Return the parsed value of this type from a string
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
public object ValueOf(string s)
{
return s;
}
}
Srini Junnuru | Sr. Technical Consultant l *TARGET Stores Development l
612.304.8167(office) | 612.304.6300(fax)
From: Michael McCurrey [mailto:[email protected]]
Sent: Sunday, July 12, 2009 10:39 AM
To: [email protected]
Subject: Re: Using SQL Server 2k8 - Table Value Parameters in iBatis .net
I'm looking into it Srini. I'm more of a non-sql server guy myself so I'm
trying to get a handle on it.
On Sat, Jul 11, 2009 at 3:12 PM, Srinivas.Junnuru
<[email protected]<mailto:[email protected]>> wrote:
Just a followup.
Hoping that this feature will be supported out of the box in the next version
of DataMapper that targets .NET 3.5 and later.
Thanks
-Srini
________________________________
From: Srinivas.Junnuru
[mailto:[email protected]<mailto:[email protected]>]
Sent: Saturday, July 11, 2009 5:09 PM
To: [email protected]<mailto:[email protected]>;
[email protected]<mailto:[email protected]>
Subject: RE: Using SQL Server 2k8 - Table Value Parameters in iBatis .net
Nevermind.
I got it working by creating a Custom Type Handler for this particular datatype
i.e. SqlDbType.Structured
Thanks
-Srini
________________________________
From: Srinivas.Junnuru
[mailto:[email protected]<mailto:[email protected]>]
Sent: Saturday, July 11, 2009 12:49 PM
To: [email protected]<mailto:[email protected]>;
[email protected]<mailto:[email protected]>
Subject: Using SQL Server 2k8 - Table Value Parameters in iBatis .net
Hello,
Any example or input on how to pass Table Value Parameters (which are supported
in Sql Server 2008) to a Stored Proc using IBatis.net Data Mapper? I am using
Data Mapper 1.6.1
Here is a link on how to use TVPs using Sql ADO .net provider directly. Not
able to get this to work thru iBatis.
http://msdnrss.thecoderblogs.com/2009/03/20/table-value-parameter-used-in-net-simple-sample/
Thanks in advance
-Srini
________________________________
From: [email protected]<mailto:[email protected]>
[mailto:[email protected]<mailto:[email protected]>] On Behalf Of
Régis BRULEY
Sent: Friday, July 10, 2009 12:20 PM
To: [email protected]<mailto:[email protected]>;
[email protected]<mailto:[email protected]>
Subject: RE : Re: RE : Re: Reuse of statement in an other statement
Ok thanks a lot ! I'll try it right on my return on my computer.
have a nice week End.
Bye
Régis
Le 10 juil. 2009, 7:07 PM, "Michael McCurrey"
<[email protected]<mailto:[email protected]>> a écrit :
You can't have your statement pass a dynamic parameter to that; however, you
can 'catch' statement parameters in your sql fragment.
For example:
<sql id="Fragment">
insert into MySuperTable(Column1)
values(#MyVariable,type=String,dbType=VarChar#)
</sql>
On Fri, Jul 10, 2009 at 9:57 AM, Régis BRULEY
<[email protected]<mailto:[email protected]>> wrote: > > Hi, > > Test that's he...
--
Michael J. McCurrey
Read with me at http://www.mccurrey.com
http://chaoticmindramblings.blogspot.com/