MongoDb などに接続/更新できる複数のプロジェクトでソリューションを実行しています。これらのプロジェクトは、c# dll および c# Excel プロジェクト (および単体テスト プロジェクト) です。
asp.net mvc 4 プロジェクトを使用した別のソリューションがあり、同じコードを使用して同じ MongoDb から読み取ろうとしています。呼び出しコードの例は次のとおりです。
const string RESULT = "000000000000000000000000";
string connectionString = ConfigurationManager.ConnectionStrings["MongoServerSettings"].ConnectionString;
var client = new MongoClient(connectionString);
var server = client.GetServer();
var db = server.GetDatabase("test");
var entityCollection = db.GetCollection<MyObj>("Test");
var test = entityCollection.AsQueryable().Single(x => x.Id == RESULT);
新しいasp.netプロジェクトで発生するエラーは次のとおりです。
Unable to connect to server localhost:27017: Request for the permission of type 'System.Net.SocketPermission, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
接続文字列は成功したソリューションと同じですが、web.config ファイルに追加されています。
<add name="MongoServerSettings" connectionString="mongodb://localhost/test" />
最初のソリューションで System.Net.SocketPermission への参照を使用していません (私は思いません)。
これが私が犯している些細な間違いかどうかわかりますか? 重要な情報を見逃している場合はお知らせください。更新します。
私はこのエキサイティングなソフトウェア開発の世界に非常に慣れていないため、用語が緩い場合はご容赦ください。また、仕事をすることができる別のWebサーバーでSqlサーバーを実行していますが、MongoDbを使用するためにすべてが整っているので、MongoDbを使用したいと思っています。
編集 WiredPrairie が以下で言及しているように、信頼レベルを Medium から Full に変更するだけで済みました。