Code in button teste in winforms app:
fDataModule.DataAdapter.UseDynamicWhere = true;
var lQuery = from emp in fDataModule.DataAdapter.GetTable<dbotbl_bairro>()
where emp.bai_codigo < 100
select emp;
MessageBox.Show(lQuery.ToList().Count().ToString()); /*message display 4 records*/
fDataModule.DataAdapter.UseDynamicWhere = true;
var lQuery2 = from emp in fDataModule.DataAdapter.GetTable<dbotbl_bairro2>()
where emp.bai_codigo < 100
select emp;
MessageBox.Show(lQuery2.ToList().Count().ToString()); /*second lquery2 raise error: An unhandled exception of type 'RemObjects.DataAbstract.Linq.LinqException' occurred in RemObjects.DataAbstract.Linq.dll Additional information: The member 'bai_codigo' is not supported. Note: Class public class dbotbl_bairro2 : dbotbl_bairro { }
*/
Error:
RemObjects.DataAbstract.Linq.LinqException was unhandled
HResult=-2146233088
Message=The member ‘bai_codigo’ is not supported
Source=RemObjects.DataAbstract.Linq
StackTrace:
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitMemberAccess(MemberExpression val)
em RemObjects.DataAbstract.Linq.ExpressionVisitor.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitValue(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitBinary@0(BinaryExpression b, String o)
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitBinary(BinaryExpression val)
em RemObjects.DataAbstract.Linq.ExpressionVisitor.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitPredicate(Expression expr)
em RemObjects.DataAbstract.Linq.QueryFormatter.VisitSelect(SelectExpression val)
em RemObjects.DataAbstract.Linq.ExpressionVisitor.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.Visit(Expression val)
em RemObjects.DataAbstract.Linq.QueryFormatter.Format(Expression val, DataParameter[]& Parameters)
em RemObjects.DataAbstract.Linq.RemoteTable1.Translate(Expression expression) em RemObjects.DataAbstract.Linq.RemoteTable
1.Execute(Expression expression, DataParameter[] parameters)
em RemObjects.DataAbstract.Linq.RemoteTable1.Execute(Expression expression) em RemObjects.DataAbstract.Linq.RemoteTableQuery
1.GetEnumerator()
em System.Collections.Generic.List1..ctor(IEnumerable
1 collection)
em System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
em WinFormsApplication1.MainForm.btnTeste_Click(Object sender, EventArgs e) na c:\temp\TESTE\WinForms\WinFormsApplication1\WinFormsApplication1\MainForm.cs:linha 38
em System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
em System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
em System.Windows.Forms.Control.WndProc(Message& m)
em System.Windows.Forms.ButtonBase.WndProc(Message& m)
em System.Windows.Forms.Button.WndProc(Message& m)
em System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
em System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
em System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
em System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
em System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
em WinFormsApplication1.Program.Main() na c:\temp\TESTE\WinForms\WinFormsApplication1\WinFormsApplication1\Program.cs:linha 16
em System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
em Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
em System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
em System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
em System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
em System.Threading.ThreadHelper.ThreadStart()
InnerException:
Scritp DATABASE:
CREATE DATABASE TESTE
GO
USE TESTE
GO
CREATE TABLE tbl_bairro (bai_codigo integer NOT NULL PRIMARY KEY, bai_descricao VARCHAR(100))
GO
INSERT INTO tbl_bairro (bai_codigo, bai_descricao) VALUES(1, ‘TESTE 11’)
INSERT INTO tbl_bairro (bai_codigo, bai_descricao) VALUES(2, ‘TESTE 12’)
INSERT INTO tbl_bairro (bai_codigo, bai_descricao) VALUES(3, ‘TESTE 13’)
INSERT INTO tbl_bairro (bai_codigo, bai_descricao) VALUES(4, ‘TESTE 14’)
TESTE.rar (204.3 KB)