使用C#,WPF,实体框架和Visual Studio 2012不会在数据库中更新数据

高拉夫·乔汉(Gaurav Chauhan)

这个问题是参考我在这里的旧问题:datagrid中的主键始终为零

在我之前的问题中,我正在研究具有许多关系的大型数据库,因此我想尝试一下并在此基础(非常基础)的项目上进行测试。

我所做的是我创建了简单的基本wpf应用程序。添加了本地数据库,其中只有一个表有两列。一个是id列,它是主键并自动递增;另一个是简单的varchar。我将其添加为数据源并从该数据源创建了网格。

这是我的xaml:

<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WpfApplication4" mc:Ignorable="d" x:Class="WpfApplication4.MainWindow"
    Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded_1">
<Window.Resources>
    <CollectionViewSource x:Key="tablesViewSource" d:DesignSource="{d:DesignInstance {x:Type local:Table}, CreateList=True}"/>
</Window.Resources>
<Grid DataContext="{StaticResource tablesViewSource}">
    <DataGrid x:Name="tablesDataGrid" AutoGenerateColumns="False" EnableRowVirtualization="True" ItemsSource="{Binding}" Margin="47,24,70,95" RowDetailsVisibilityMode="VisibleWhenSelected">
        <DataGrid.Columns>
            <DataGridTextColumn x:Name="idColumn" Binding="{Binding Id}" Header="Id" Width="SizeToHeader"/>
            <DataGridTextColumn x:Name="nameColumn" Binding="{Binding name}" Header="name" Width="SizeToHeader"/>
        </DataGrid.Columns>
    </DataGrid>
    <Button Content="Button" HorizontalAlignment="Left" Margin="221,266,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click_1"/>

</Grid>

仅有的两行代码是我编写的。Rest是自动生成的,现在我想从gridview更新我的数据,但是最大的问题是数据没有更新,它一直加零。

我在这里添加了整个cs文件。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfApplication4
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private System.Data.Objects.ObjectQuery<Table> GetTablesQuery(Database1Entities database1Entities)
    {
        System.Data.Objects.ObjectQuery<WpfApplication4.Table> tablesQuery = database1Entities.Tables;
        // Returns an ObjectQuery.
        return tablesQuery;
    }

    private void Window_Loaded_1(object sender, RoutedEventArgs e)
    {

        WpfApplication4.Database1Entities database1Entities = new WpfApplication4.Database1Entities();
        // Load data into Tables. You can modify this code as needed.
        System.Windows.Data.CollectionViewSource tablesViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("tablesViewSource")));
        System.Data.Objects.ObjectQuery<WpfApplication4.Table> tablesQuery = this.GetTablesQuery(database1Entities);
        tablesViewSource.Source = tablesQuery.Execute(System.Data.Objects.MergeOption.AppendOnly);
    }

    private void Button_Click_1(object sender, RoutedEventArgs e)

    {
        var context = new WpfApplication4.Database1Entities();
       // Database1Entities db = new Database1Entities();
        // db.SaveChanges();
        context.SaveChanges();
    }
}

}` 在此处输入图片说明

我已经开始怀疑自己的基本知识。请帮忙。

罗曼扎

这对我有用(调整变量名):

 using System.Data.Entity;

    private Database1Entities  _context = new Database1Entities (); 

    private void Window_Loaded(object sender, RoutedEventArgs e) {

        System.Windows.Data.CollectionViewSource tableViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("tableViewSource")));
        _context.Table.Load();
        tableViewSource.Source = _context.Table.Local;
    }

    private void Button_Click(object sender, RoutedEventArgs e) {
        _context.SaveChanges();
        tableDataGrid.Items.Refresh(); 
    }

有关更多信息,访问:https : //msdn.microsoft.com/en-us/data/jj574514.aspx

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用AJAX和PHP时不会在数据库中删除行

来自分类Dev

使用 Firebase 不会在 Unity 编辑器中更新数据库

来自分类Dev

在UNSAFE模式下使用文件路径创建组件不会在数据库中创建函数

来自分类Dev

使用代码优先方法的可空枚举字段不会在数据库中创建枚举字段

来自分类Dev

在UNSAFE模式下使用文件路径创建组件不会在数据库中创建函数

来自分类Dev

php和mysqli代码不会在我的数据库中输入数据

来自分类Dev

Visual Studio中的实体框架:数据库不是使用DbContext基本构造函数创建的

来自分类Dev

Visual Studio中的实体框架:数据库不是使用DbContext基本构造函数创建的

来自分类Dev

使用直接查询不会在Oracle数据库中显示插入的数据

来自分类Dev

数据不会在数据库中更新

来自分类Dev

使用Fluent NHibernate将新项目添加到集合中不会在数据库中插入新行

来自分类Dev

从Visual Studio数据库项目生成实体框架模型

来自分类Dev

行不会在数据库中更新

来自分类Dev

Visual Studio 2012 使用外部数据库发布项目 c#

来自分类Dev

如何在Visual Studio 2012中将数据添加到Access数据库

来自分类Dev

C#-非拉丁字符在数据库Visual Studio中无法正确显示

来自分类Dev

来自数据库的数据不会在页面加载时使用 angular 加载到变量中

来自分类Dev

从ASP.NET,Visual Studio 2012中的数据库更新模型后,部分模型实体类会重置吗?

来自分类Dev

在Microsoft Visual Studio 2013的WinForms中为MySql(C#)启用实体框架6

来自分类Dev

更新ParameterSyntaxList不会在Visual Studio中更新代码吗?

来自分类Dev

Visual Studio 2012数据库项目-文件路径配置

来自分类Dev

在 Visual Studio 2017 中从数据库更新模型后无法识别 DB 实体

来自分类Dev

Visual Studio中的C#和SQL数据库开发方法

来自分类Dev

“需要迁移”对于Visual Studio 2012中的SQL Server数据库项目意味着什么

来自分类Dev

数据库文件在Visual Studio 2012 MVC中的位置

来自分类Dev

Visual Studio 2012 C#手动将信息添加到数据库

来自分类Dev

如何修复:使用 Visual Studio 在 C# 中“无法导入数据库”

来自分类Dev

使用Visual Studio数据库项目更新数据库

来自分类Dev

使用 C# WPF 应用程序、Visual Studio 写入 Access 数据库需要很长时间,

Related 相关文章

  1. 1

    使用AJAX和PHP时不会在数据库中删除行

  2. 2

    使用 Firebase 不会在 Unity 编辑器中更新数据库

  3. 3

    在UNSAFE模式下使用文件路径创建组件不会在数据库中创建函数

  4. 4

    使用代码优先方法的可空枚举字段不会在数据库中创建枚举字段

  5. 5

    在UNSAFE模式下使用文件路径创建组件不会在数据库中创建函数

  6. 6

    php和mysqli代码不会在我的数据库中输入数据

  7. 7

    Visual Studio中的实体框架:数据库不是使用DbContext基本构造函数创建的

  8. 8

    Visual Studio中的实体框架:数据库不是使用DbContext基本构造函数创建的

  9. 9

    使用直接查询不会在Oracle数据库中显示插入的数据

  10. 10

    数据不会在数据库中更新

  11. 11

    使用Fluent NHibernate将新项目添加到集合中不会在数据库中插入新行

  12. 12

    从Visual Studio数据库项目生成实体框架模型

  13. 13

    行不会在数据库中更新

  14. 14

    Visual Studio 2012 使用外部数据库发布项目 c#

  15. 15

    如何在Visual Studio 2012中将数据添加到Access数据库

  16. 16

    C#-非拉丁字符在数据库Visual Studio中无法正确显示

  17. 17

    来自数据库的数据不会在页面加载时使用 angular 加载到变量中

  18. 18

    从ASP.NET,Visual Studio 2012中的数据库更新模型后,部分模型实体类会重置吗?

  19. 19

    在Microsoft Visual Studio 2013的WinForms中为MySql(C#)启用实体框架6

  20. 20

    更新ParameterSyntaxList不会在Visual Studio中更新代码吗?

  21. 21

    Visual Studio 2012数据库项目-文件路径配置

  22. 22

    在 Visual Studio 2017 中从数据库更新模型后无法识别 DB 实体

  23. 23

    Visual Studio中的C#和SQL数据库开发方法

  24. 24

    “需要迁移”对于Visual Studio 2012中的SQL Server数据库项目意味着什么

  25. 25

    数据库文件在Visual Studio 2012 MVC中的位置

  26. 26

    Visual Studio 2012 C#手动将信息添加到数据库

  27. 27

    如何修复:使用 Visual Studio 在 C# 中“无法导入数据库”

  28. 28

    使用Visual Studio数据库项目更新数据库

  29. 29

    使用 C# WPF 应用程序、Visual Studio 写入 Access 数据库需要很长时间,

热门标签

归档