SqlIgnore Attribute doesn't work. I think this attribute not fully supported in class ObjectMapper.

74 views
Skip to first unread message

Alexei Kostusev

unread,
May 27, 2013, 10:38:50 AM5/27/13
to blto...@googlegroups.com
I've tried to change method in class ObjectMapper like this
public override void SetValue(object o, int index, object value)
{
            if (_members[index].MapMemberInfo.SqlIgnore == false)
            {
                _members[index].SetValue(o, value);
            }
}
but it didn't help.

I've always got this error:

Input string was not in a correct format.


Call stack:
[FormatException: Input string was not in a correct format.]
   System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +10722195
   System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +145
   BLToolkit.Common.Convert.ToInt32(Object p) +571
   BLToolkit.Mapping.MappingSchema.ConvertToInt32(Object value) +60
   BLToolkit.Mapping.Int32Mapper.SetValue(Object o, Object value) +56
   BLToolkit.Mapping.ObjectMapper.SetValue(Object o, Int32 index, Object value) +93
   BLToolkit.Mapping.DefaultValueMapper.Map(IMapDataSource source, Object sourceObject, Int32 sourceIndex, IMapDataDestination dest, Object destObject, Int32 destIndex) +32
   BLToolkit.Data.Linq.Builder.TableContext.MapDataReaderToObject1(IDataReader dataReader, MappingData data) +686
   lambda_method(Closure , QueryContext , IDataContext , IDataReader , Expression , Object[] ) +47
   BLToolkit.Data.Linq.<Map>d__58.MoveNext() +204
   System.Linq.Enumerable.FirstOrDefault(IEnumerable`1 source) +164
   BLToolkit.Data.Linq.Builder.<>c__DisplayClass8`1.<BuildQuery>b__1(QueryContext ctx, IDataContextInfo db, Expression expr, Object[] ps) +64
   BLToolkit.Data.Linq.ExpressionQuery`1.System.Linq.IQueryProvider.Execute(Expression expression) +71
   System.Linq.Queryable.FirstOrDefault(IQueryable`1 source, Expression`1 predicate) +287
   ChaosArenaBusinessLogic.DataAccessLevel.HelicopterDl.GetHelicopterById(Int32 id) in c:\Work\Projects\ChaosArena\Source\ServerSide\ChaosArenaBusinessLogic\DataAccessLevel\HelicopterDl.cs:28
   ChaosArenaBusinessLogic.HelicopterBl.GetHelicopterById(Int32 id) in c:\Work\Projects\ChaosArena\Source\ServerSide\ChaosArenaBusinessLogic\BusinessLogic\HelicopterBl.cs:15
   _Default.Page_Load(Object sender, EventArgs e) in c:\Work\Projects\ChaosArena\Source\ServerSide\ServerSidePortal\Default.aspx.cs:15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
   System.Web.UI.Control.OnLoad(EventArgs e) +92
   System.Web.UI.Control.LoadRecursive() +54
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772

Alexei Kostusev

unread,
May 27, 2013, 10:47:14 AM5/27/13
to blto...@googlegroups.com
Just now I've found the way to resolve this error: I user  [MapIgnore] attrubute together with [SqlIgnore]. Maybe this information helps anybody.

понедельник, 27 мая 2013 г., 17:38:50 UTC+3 пользователь Alexei Kostusev написал:

obasaa.obs...@gmail.com

unread,
May 30, 2013, 1:05:15 PM5/30/13
to blto...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages