如何将foxpro 6表插入视觉工作室2017?

时间:2017-05-24 14:40:32

标签: vb.net visual-studio visual-foxpro

最近我想更新我的旧应用程序女巫是用foxpro 6写的。现在我想用VB.net做一个新的。背后的原因是我的项目是我叔叔的商店的POS系统。由于PC太旧而且可能随时都坏了,我需要更新它并与Windows 10兼容,因为新PC使用的是Windows 10.这就是为什么我需要制作一个新应用程序但是当我使用链接时在Visual Studio中,服务(数据源>添加新的数据源),它显示我的表是空白的,这是错误的,我的表充满了数据。那么我怎样才能成功地将表格与视觉工作室联系起来?

连接字符串Dsn=inventory

PS:我使用正确的odbc驱动程序并多次测试并静止不动。

谢谢大家。

2 个答案:

答案 0 :(得分:0)

使用VFPOLEDB进行连接。使用VFPOLEDB,您只需使用带有连接字符串的OleDbConnection:

new OleDbConnection("Provider=VFPOLEDB;Data Source=c:\your data folder")

另请查看Tom Brother的LinqToVFP,VFP EF Provider和其他有关codeplex的内容。

恕我直言,使用Windows 10并不是在VB.Net中重写VFP应用程序的好理由。无论如何,如果你想这样做,那你为什么不把你的数据库后端改为postgreSQL,MySQL,SQL Server等等。

答案 1 :(得分:0)

我找到了解决方案,您可以使用代码而不是向导来连接FoxPro表,这是解决方案。

首先使用连接字符串连接表,而不是为表设置DataAdapter和DataSet,最后填充DataAdapter并将其放入DataGridView。

Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim connectionString As String = "provider=vfpoledb.1;data source=your location"
    Dim myConnection As New System.Data.OleDb.OleDbConnection(connectionString)
    myConnection.Open()
    Dim dataAdapter As New OleDbDataAdapter("FoxPro SQL cmd", myConnection)
    Dim dataSet As DataSet = New DataSet

    dataAdapter.Fill(dataSet, "Q")
    DataGridView1.DataSource = dataSet.Tables("Q")
End Sub

希望这可以提供帮助。