远程数据库访问任何都是通过互联网

时间:2012-05-09 12:30:26

标签: .net sql-server database silverlight connection-string

假设我有两台PC 两者都可以通过互联网。 我需要通过 PC2 访问 PC1 的数据库。 下面是我的IP版本协议对话框的屏幕截图。

enter image description here

注意: PC1是我的PC,数据库应该驻留在PC上,PC2将是互联网上的任何PC

我正在使用SilverLight开发WebSite \ WebPage。 对于本地访问数据库(MS SQL Server),我使用以下连接字符串。

<connectionStrings>
<add name="SkiResultEntities" connectionString="metadata=res://*/SkiResultModel.csdl|res://*/SkiResultModel.ssdl|res://*/SkiResultModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=PRITESHARYAN-PC\PRITESHB_ARYAN;Initial Catalog=SkiResultData;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
    </connectionStrings>

我必须在连接字符串或SQL Server数据库设置中进行哪些修改? 因此,我的电脑中 PC1 的数据库可以通过互联网访问任何人... 请帮助.....

2 个答案:

答案 0 :(得分:1)

您可以尝试使用VPN在两台计算机之间创建these instructions。我没有尝试过这个,基于几个在线评论和问题,这对于不同版本的Windows来说变得困难。

答案 1 :(得分:1)

鉴于您使用的是Silverlight,远程PC将无法直接访问数据库,而是通过PC1上运行的服务器访问数据库。

这是相当复杂和涉及的。步骤进行:

  • 设置IIS

  • 将您的Silverlight应用程序部署到IIS(您需要更改连接字符串以使用用户名,密码 - 而不是集成安全性)。验证它是否有效。

  • 修改路由器以将端口80请求转发到192.168.137.115:80

  • 修改您的PC防火墙以启用入站端口80流量

  • 获取路由器的IP地址(使用http://WhatsMyIpAddress.com

  • 通过转到上一步中的http://xxx.xxx.xxx.xxx验证端口转发是否有效。

  • 在PC2上向用户提供上述URL(请注意,某些ISP可能会更改您的IP地址)。