我正在尝试在WP7 Mango项目中实现SQL CE,但是当我尝试将对象插入/保存到我的数据库时,我遇到了这个错误。
我的代码如下:
public static void Save(MyObject myobject)
{
using (DBDataContext dc = new DBDataContext(DBDataContext.ConnectionString))
{
dc.MyObject.InsertOnSubmit(myobject);
dc.SubmitChanges();
}
}
当代码命中insertonsubmit行时,它会以
分隔MissingMethodException was unhandled
MissingMethodException
这就是它告诉我的全部。
调用堆栈:
mscorlib.dll!System.Activator.InternalCreateInstance(System.Type type, bool nonPublic, ref System.Threading.StackCrawlMark stackMark) + 0xe4 bytes
mscorlib.dll!System.Activator.CreateInstance(System.Type type) + 0x2 bytes
System.Data.Linq.dll!System.Data.Linq.WorkAround.ActivationHelper.CreateInstance(System.Type type)
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.StandardTrackedObject.CreateDataCopy(object instance) + 0x12 bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.StandardTrackedObject.StartTracking() + 0x16 bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.OnPropertyChanging(object sender, System.ComponentModel.PropertyChangingEventArgs args) + 0x16 bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.Attach(object obj) + 0x1f bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.Track(System.Data.Linq.Mapping.MetaType mt, object obj, System.Collections.Generic.Dictionary<object,object> visited, bool recurse, int level) + 0x4e bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.Track(object obj, bool recurse) + 0x1d bytes
System.Data.Linq.dll!System.Data.Linq.ChangeTracker.StandardChangeTracker.Track(object obj) + 0x3 bytes
System.Data.Linq.dll!System.Data.Linq.Table<FotoDok.EkstraFeltMulighed>.InsertOnSubmit(FotoDok.EkstraFeltMulighed entity) + 0xac bytes
FotoDok.dll!FotoDok.EkstraFeltMulighed.Gem(FotoDok.EkstraFeltMulighed ekstrafeltmulighed)70行+ 0xc字节C# FotoDok.dll!FotoDok.opdaterProjekter.behandlProjektJson(Newtonsoft.Json.Linq.JObject o)202行+ 0x7字节C# FotoDok.dll!FotoDok.opdaterProjekter.ReadCallbackValgteProjekter.AnonymousMethod__1(System.Windows.Controls.CheckBox delChk,Newtonsoft.Json.Linq.JObject delO)Line 141 + 0x7 bytes C# mscorlib.dll!System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo rtmi,object obj,System.Reflection.BindingFlags invokeAttr,System.Reflection.Binder binder,object parameters,System.Globalization.CultureInfo culture,bool isBinderDefault,System .Reflection.Assembly caller,bool verifyAccess,ref System.Threading.StackCrawlMark stackMark)
mscorlib.dll!System.Reflection.RuntimeMethodInfo.InternalInvoke(object obj,System.Reflection.BindingFlags invokeAttr,System.Reflection.Binder binder,object [] parameters,System.Globalization.CultureInfo culture,ref System.Threading.StackCrawlMark stackMark)+ 0x168字节 mscorlib.dll!System.Reflection.MethodBase.Invoke(object obj,object [] parameters)+ 0xa bytes
mscorlib.dll!System.Delegate.DynamicInvokeOne(object [] args)+ 0x98 bytes
mscorlib.dll!System.MulticastDelegate.DynamicInvokeImpl(object [] args)+ 0x8 bytes
mscorlib.dll!System.Delegate.DynamicInvoke(object [] args)+ 0x2 bytes
System.Windows.dll!System.Windows.Threading.DispatcherOperation.Invoke()+ 0xc bytes
System.Windows.dll!System.Windows.Threading.Dispatcher.Dispatch(System.Windows.Threading.DispatcherPriority priority)+ 0x83 bytes
System.Windows.dll!System.Windows.Threading.Dispatcher.OnInvoke(对象上下文)+ 0x8字节 System.Windows.dll!System.Windows.Hosting.CallbackCookie.Invoke(object [] args)+ 0x19 bytes System.Windows.dll!System.Windows.Hosting.DelegateWrapper.InternalInvoke(object [] args)+ 0x2 bytes System.Windows.RuntimeHost.dll!System.Windows.RuntimeHost.ManagedHost.InvokeDelegate(System.IntPtr pHandle,int nParamCount,System.Windows.Hosting.NativeMethods.ScriptParam [] pParams,ref System.Windows.Hosting.NativeMethods.ScriptParam pResult )+ 0x5e字节 [外部代码]
我设法插入其他对象,使用相同的方法就好了,但我无法弄清楚是什么让这个对象有所不同。
答案 0 :(得分:1)
我自己解决了这个问题,搜索了更多关于它的信息(典型的,搜索了几个小时,然后在这里发帖后我偶然发现了答案......)
一般来说,我的类必须有一个空的构造函数,如果它们没有出现错误。 所以在我的类中添加空构造函数就解决了它。
答案 1 :(得分:0)
我想补充说构造函数必须是公共的。我有同样的问题,但在我的模型类中,我有空的内部构造函数。