我有一個項目使用Entity Framework Model First
。數據源位於互聯網中,我需要使用它的網絡/ Web代理工作。我有谷歌它,但我找不到任何有用的結果,因爲所有結果都是關於EF's Entities Proxies
。 一些有用的代碼:使用實體框架和Web代理
連接字符串:
<add name="ConnectionName" connectionString="metadata=res://*/Latin.csdl|res://*/Latin.ssdl|res://*/Latin.msl;provider=System.Data.SqlClient;provider connection string="data source=mssqlserver.server.com;initial catalog=DatabaseName;user id=admin;password=adminPass;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
用法:
static void Main(string[] args)
{
//set the proxy
var proxy = new WebProxy("109.32.24.24", 808);
proxy.Credentials = new NetworkCredential("", "");
WebRequest.DefaultWebProxy = proxy;
var db = new ContextName();
if (db.QNames.First().Name == "Testing")
{
Console.WriteLine("Success Connection!");
Console.ReadKey();
}
}
這就提出了一個網絡連接錯誤。
EDIT
該網絡已經在運行在HTTP協議代理。我知道http is the protocol you normally use to browse the web with, you do not usually connect to databases with it
,但它是唯一可用的,這個問題是關於它。你可以使用Web代理來進行多個.net連接,甚至是Web服務,我的問題是關於在EF中使用它,我不能使它工作。最後一個解決方案可能是使用類似Proxifier
這樣的程序,並將所有計算機的連接重定向到指定的Web代理,但這個想法使其更具可配置性。
@flindeberg說什麼。您需要使用哪種代理服務器連接到互聯網?它是一個SOCKS代理嗎? – CodeCaster
@flindeberg和#CodeCaster對延遲感到抱歉。希望我的編輯有助於找到答案。這是我想要做的,並且找不到實現它的方式。 –
@CodeCaster'你爲什麼認爲你需要這個?'那麼,訪問互聯網的唯一方法就是使用該代理服務器,並且數據庫位於互聯網中。我真的發現這個評論沒有用處,如果你不想幫忙,請停止提出這樣的問題。謝謝 –