I'm trying to use EF Core in my project so I download the last stable version 3.1.3
I created a DbContext
and classes from my database using Scaffold-DbContext
command in Package Manager console, and after all thing are establish I try to using this code
using (var dbContext = new SIMContext())
{
var department = new Department();
department.NameDepartment = txtDepartment.Text;
department.DescriptionDepartment = txtDescription.Text;
await dbContext.AddAsync(department).ConfigureAwait(true);
await dbContext.SaveChangesAsync().ConfigureAwait(true);
}
but when I try to save data to the database and in this line of code
await dbContext.AddAsync(department).ConfigureAwait(true);
I get this error
System.IO.FileLoadException
HResult=0x80131040
Message=Impossible de charger le fichier ou l'assembly 'System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' ou une de ses dépendances. La définition trouvée du manifeste de l'assembly ne correspond pas à la référence de l'assembly. (Exception de HRESULT : 0x80131040)
Source=Smart Industrial Management
StackTrace:
at Smart_Industrial_Management.PL.Frm_Department.<btnSave_Click>d__7.MoveNext() in C:\Users\MBoua\source\repos\SIM Windows7 - EF Core5\Smart Industrial Management\PL\Frm_Department.cs:line 107
at System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine](TStateMachine& stateMachine)
at Smart_Industrial_Management.PL.Frm_Department.btnSave_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at DevExpress.XtraEditors.BaseButton.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at DevExpress.Utils.Controls.ControlBase.WndProc(Message& m)
at DevExpress.XtraEditors.BaseControl.WndProc(Message& msg)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
at Smart_Industrial_Management.PL.FrmLogin.<btnLogin_Click>d__7.MoveNext() in C:\Users\MBoua\source\repos\SIM Windows7 - EF Core5\Smart Industrial Management\PL\FrmLogin.cs:line 108
I try to clean my solution and clear NuGet caches but I still have the same error.
I try the same code with .NET Core 5 and EF Core 5 and I succeeded.
My project is on:
.NET framework 4.7.2
EF Core 3.1.3
System Threading Tasks Extensions 4.5.4
How can I solve this problem?.
It is looking for an earlier version of System.Threading.Tasks.Extensions, Version=4.2.0.0.
You can try Assembly version redirection: https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions
This can of course produce problems if you are redirecting between major versions of an assembly.
Hope this helps
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.