2016-11-29 28 views
1

私はサーバーサイドプラグインを作成/テストしていますが、これが私たちの開発用TFSインスタンスまたは実動TFSインスタンス上で実行されているかどうかを調べたいと思っています。開発インスタンスから派生したものであることを人々に確実に知らせるために送信します)。TFSインスタンスをDevelopmentとして定義することはできますか?

私はRequestContextの変数を経由してアクセスできる「IsProduction」プロパティがあります(IVSSRequestContext.ServiceHost.IsProduction - 以前TFS2015前TeamFoundationRequestContext.TeamFoundationServicehost.IsProductionだった)が、このプロパティは、両方のインスタンスでtrueに設定されています。

これはその目的で使用できるかどうかを知っていますか?その場合、どのように設定することができますか?オンラインでドキュメントを見つけることができず、TFS管理コンソールでは何もわかりません。

答えて

0

いいえ、グローバル環境変数(例:IsDevelopment)を使用することをおすすめします。 もう1つの方法は、サーバーURLを取得して(コードスニペットを参照)、それを使用して環境を判断することですが、安全性は低いと思います。

private Uri GetCollectionUriFromContext(IVssRequestContext requestContext) { ILocationService service = requestContext.GetService<ILocationService>(); return service.GetSelfReferenceUri(requestContext, service.GetDefaultAccessMapping(requestContext)); }

+0

私見 'IsProduction'はVSTSコードにMSによって使用され、異なる値が有しています。 –

関連する問題