所以我目前正在攻读C#认证考试,我正在研究数据的使用,这涉及到ADO.NET实体并使用它们来连接数据库并与之通信(嵌入在数据库中)应用程序)及其创建的模型。我已根据教科书中的示例创建了一个相对较小且简单的应用程序。
然而,在我看来,如果我尝试将具有Entity Framework用途的部署和应用程序部署到客户端计算机,会发生什么情况(在案例中,我将来使用它并需要知道如何使其工作正如它应该)。令我惊讶的是它崩溃了,我有一个数据网格,它在首次加载应用程序时绑定数据库中的数据。因此,我猜测还有一些额外的工作要做,而不仅仅是压缩文件或进行一键式部署。
我相信我正在测试的计算机上有适当的.net框架..(我现在正在检查这个)..但如果不是这个,请随意给你的输入^。^
下面我已经包含了我的示例测试应用程序的代码
员工类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WpfApplication1
{
class Employee
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string City { get; set; }
public string State { get; set; }
}
}
主窗口:
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 WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DoStuff();
}
public void DoStuff()
{
List<Employee> employees = new List<Employee>()
{
new Employee()
{
ID = 1,
FirstName = "John",
LastName = "Smith",
City = "Havertown",
State = "PA"
},
new Employee()
{
ID = 2,
FirstName = "Jane",
LastName = "Doe",
City = "Ewing",
State = "NJ"
},
new Employee()
{
ID = 3,
FirstName = "Jack",
LastName = "Jones",
City = "Fort Washington",
State = "PA"
}
};
var employeesByState = from e in employees
group e by e.State;
using (DatabaseEntities db = new DatabaseEntities())
{
foreach (var employeeGroup in employeesByState)
{
foreach (var employee in employeeGroup)
{
Stuff st = new Stuff()
{
ID = employee.ID,
FirstName = employee.FirstName,
LastName = employee.LastName,
};
db.Stuffs.Add(st);
db.SaveChanges();
var result = (from c in db.Stuffs
select c).ToList();
dtgResults.ItemsSource = result;
}
}
}
}
}
所以我非常确定我在这里缺少一些基本要求,因为它在另一台计算机上打开时会崩溃。即使使用我认为下载的一键式部署并安装应用程序的任何要求。
如果有人能帮助我理解我错过了什么或者理解错误,那就太棒了,谢谢
答案 0 :(得分:0)
由于我无法发表评论......我会发布这个......
您应确保运行该应用程序的其他计算机可以访问DatabaseEntities上配置的连接字符串中指定的数据库。