[英]How to connect to the mdf database?
Used by:使用人:
I get _studBindList.Count = 0
.我得到
_studBindList.Count = 0
。
How to connect to the mdf database?如何连接到mdf数据库?
Category.cs分类.cs
using System.ComponentModel.DataAnnotations.Schema;
namespace WpfAppFrm
{
[Table("Categories")]
public class Category
{
public Category()
{
// this.Products = new ObservableCollection<Product>();
}
public int CategoryId { get; set; }
public string Name { get; set; }
// public virtual ObservableCollection<Product> Products { get; private set; }
}
}
ProductContext.cs产品上下文.cs
using System.Data.Entity;
namespace WpfAppFrm
{
public class ProductContext : DbContext
{
// public ProductContext() : base("DefaultConnection")
public ProductContext(string сonnectionString)
{
}
public DbSet<Category> Categories { get; set; }
// public DbSet<Product> Products { get; set; }
}
}
MainWindow.xaml.cs主窗口.xaml.cs
//
using System.ComponentModel;
using System.Data.Entity;
namespace WpfAppFrm
{
/// <summary>
/// Логика взаимодействия для MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
// public static string сonnectionString = @"C:\test\DB\NorthwindC.mdf";
public static string сonnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\test\DB\NorthwindC.mdf;Integrated Security=True;Connect Timeout=30";
private ProductContext _context = new ProductContext(сonnectionString);
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded_1(object sender, RoutedEventArgs e)
{
try
{
System.Windows.Data.CollectionViewSource categoryViewSource =
((System.Windows.Data.CollectionViewSource)(this.FindResource("categoryViewSource")));
_context.Categories.Load();
BindingList<Category> _studBindList = _context.Categories.Local.ToBindingList();
categoryViewSource.Source = _context.Categories.Local;
}
catch (Exception ex)
{
throw;
}
}
}
}
MainWindow.xaml主窗口.xaml
<Window x:Class="WpfAppFrm.MainWindow"
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:WpfAppFrm"
mc:Ignorable="d"
Title="MainWindow" Height="443.317" Width="243.069" Loaded="Window_Loaded_1">
<Window.Resources>
<CollectionViewSource x:Key="categoryViewSource"
d:DesignSource="{d:DesignInstance {x:Type local:Category}, CreateList=True}"/>
<CollectionViewSource x:Key="categoryProductsViewSource" Source="{Binding Products, Source={StaticResource categoryViewSource}}"/>
</Window.Resources>
<Grid DataContext="{StaticResource categoryViewSource}" Margin="0,0,28,0">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="0*"/>
<ColumnDefinition Width="0*"/>
</Grid.ColumnDefinitions>
<DataGrid x:Name="categoryDataGrid" AutoGenerateColumns="False" EnableRowVirtualization="True"
ItemsSource="{Binding}" Margin="13,13,3,257"
RowDetailsVisibilityMode="VisibleWhenSelected">
<DataGrid.Columns>
<DataGridTextColumn x:Name="categoryIdColumn" Binding="{Binding CategoryId}"
Header="CategoryId" Width="SizeToHeader"/>
<DataGridTextColumn x:Name="nameColumn" Binding="{Binding Name}"
Header="Name" Width="SizeToHeader"/>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>
App.config应用配置
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
SQL table Categories
SQL 表
Categories
CREATE TABLE [dbo].[Categories] (
[CategoryId] INT IDENTITY (1, 1) NOT NULL,
[Name] NVARCHAR (40) NULL,
PRIMARY KEY CLUSTERED ([CategoryId] ASC)
);
Added methods:新增方法:
Method AddEntity() .方法AddEntity() 。
public void AddEntity()
{
Category category = new Category
{
Name = "Name_Category_4"
};
_context.Categories.Add(category);
_context.SaveChanges();
}
Method GetAll() .方法GetAll() 。
public void GetAll()
{
_context.Categories.Load();
BindingList<Category> _studBindList = _context.Categories.Local.ToBindingList();
}
I ran debugging twice.我运行了两次调试。
When I debugged a second time, I made a picture.第二次调试的时候,做了个图。
.mdf is a file format used by SQL Server. .mdf 是 SQL Server 使用的文件格式。 You can't directly connect to such a file.
您不能直接连接到这样的文件。 Instead you would need to import that file as a database into SQL Server (and if you don't have SQL Server you'll have to install that too).
相反,您需要将该文件作为数据库导入 SQL Server(如果您没有 SQL Server,则也必须安装它)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.