2012-05-09 124 views
0

假設我有兩個PC都可以通過互聯網。 我需要訪問PC1PC2的數據庫。 我的IP版本協議對話框下方的截圖。遠程數據庫訪問任何通過互聯網

enter image description here

注: PC1是我的電腦數據庫,在那裏應該駐留和PC2將任何一臺PC在互聯網上

我使用Silverlight開發網頁\網頁。 而對於本地訪問數據庫(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可以訪問來自任何人在互聯網上... 請幫助.....

+1

你不能真的這樣做,給你的私人,NAT保護IP塊。你不應該也想。但是,假設你想要,你需要找出你的公共IP(這可能會改變)並使用它,並通過youtlr路由器/防火牆打開正確的TCP/IP端口。仍然不推薦。更好的選擇:網絡服務。 –

+0

任何好的例子...如何使用webservices ..? – Pritesh

+0

@AndrewBarber其實我也不知道有關它的任何事情...如何打開TCP/IP端口或等... – Pritesh

回答

1

鑑於您正在使用Silverlight,遠程PC將不會直接訪問數據庫,而是通過您在PC1上運行的服務器訪問數據庫。

這是相當複雜和涉及。步驟:

  • 設置IIS

  • 部署Silverlight應用程序到IIS(你需要改變你的連接字符串使用用戶名,密碼 - 而不是集成安全性)。驗證它的工作。

  • 修改路由器到80個端口請求轉發到192.168.137.115:80

  • 修改你的電腦防火牆啓用入站端口80通信

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

  • 驗證端口轉發的工作原理是前一步驟中的http://xxx.xxx.xxx.xxx

  • 向PC2上的用戶提供上述URL(請注意,某些ISP可能會更改您的IP地址)。

1

您可以嘗試使用these instructions創建VPN兩者之間的計算機。我還沒有嘗試過這一點,並基於幾個在線評論和問題,這對於不同版本的Windows來說很困難。