私はWebサービス、C#、および.NETについては初めてです。 データベースにデータを書き込むためにWebメソッドで接続オブジェクトを使用したいが、このオブジェクトのインスタンスを作成する場所はありません。インスタンス化してWebメソッドで破棄するのは非常にばかげています。 私は接続インスタンスに毎回アクセスできるようにしたいので、これを適切に行うためのコンストラクタなどがあります。Webサービスのインスタンス化オブジェクトC#.NET
4
A
答えて
3
私はあなたが何を意味するか知っている:あなたには、接続管理コードを繰り返す必要はありませんすべての方法。それは確かにばかげているでしょう。
私はこれを好きです:私はthis techniqueを使用してリクエストごとの接続を作成します。 WCF呼び出しが終了すると、私は接続を破棄します。
コール中に、私はこの接続が存在することに依存することができます。それは正しくクリーンアップされます。
残念ながら、WCFにはHttpContext.Items組み込み関数がありません。そのため、拡張子を使用してハックする必要があります。
3
Webメソッドでデータベース接続クラスをインスタンス化する必要があります。
- C#は
object-orientated
言語である:私はあなたのウェブメソッドで、このようなオブジェクトをインスタンス化についてのばかげたものは何も存在しないことを主張するだろう。オブジェクトを作成せずに多くを達成するつもりはない。 - ほとんどのADO.NET接続オブジェクト(SQL Server & Oracleを含む)は接続プールを実装しているため、新しい接続オブジェクトを作成するたびにサーバーへの物理接続を作成しません。その代わりに、データベース・ライブラリーは接続プールを管理します。
私はあなたがWebサービスの呼び出し後に接続を解除することを確認するために、このようなものをお勧めします:
// This example uses SQL-Server connections, but most
// ADO.NET database drivers are similar.
using(SqlConnection conn = new SqlConnection(MyConnStr))
{
UseConnection(conn);
}
// connection released to pool here automatically.
関連する問題
- 1. インスタンス化し、オブジェクトC++
- 2. C++ポインタとオブジェクトのインスタンス化
- 3. クラス名による.Netオブジェクトのインスタンス化
- 4. C#/ .NETのリモートポートレット用Webサービス - オプション?
- 5. C#インスタンス化ベースオブジェクト派生オブジェクト
- 6. backbone.jsモデル同期とC#.net RESTful Webサービス
- 7. .net Webサービス
- 8. プロキシWebサービス.net
- 9. オブジェクトプロパティのC#Webサービスのシリアル化
- 10. 未知のC++オブジェクトのインスタンス化構文
- 11. C++/CLIでCOMオブジェクトのインスタンス化
- 12. NetBeansと.NET Webサービス
- 13. .NetマイクロフレームワークとWebサービス
- 14. .NET Webサービス - SOAPフォールト
- 15. オブジェクトのインスタンス化
- 16. Oracle Fusion SOAの.Net Webサービス
- 17. ASP .NET MVC2のWebサービス
- 18. Webサービス.NET Frameworkの問題
- 19. Robot FrameworkでC#オブジェクトをインスタンス化する
- 20. .NET CoreのDIコンテナを使用したオブジェクトのインスタンス化
- 21. Webサービスのシリアル化
- 22. インスタンス化オブジェクト(codecademy)
- 23. インスタンス化オブジェクト
- 24. RavenDbオブジェクトのインスタンス化
- 25. DocumentDatabaseオブジェクトのインスタンス化
- 26. WebサービスのWebサービスへの呼び出しのスレッド - (.net 2.0)
- 27. .NET SOAP Webサービスreturn JSON
- 28. .netスクリプトWebサービス:__type属性
- 29. ソケットとWebサービス.NET(ファイルアップデータ)
- 30. COMオブジェクトプーリングと.NET Webサービス
オブジェクトを作成して使用し、すぐに破棄するのはばかげていません。どうしてそう思うの? – svick