2011-09-12 5 views
-3

私はアプリケーションの開始方法と開始場所がわかりません。これらのテクノロジのサンプルアプリケーションをお持ちの場合は、アプリケーションを共有してください。私の技術フレームワーク3.5と言語はC#になり、テンプレートはMVC2になり、バックエンドはOracle 9iになります。すでにデータベースは&です。oracleデータベースを持つmvc2

答えて

2

ASP.NET MVCと特定のデータアクセステクノロジを混在させないでください。 DALレイヤーに抽象化する必要があります。

public interface IProductsRepository 
{ 
    Product Get(int id); 
} 

、その後コントローラ:たとえば、その後、すべての

public class ProductsRepositoryOracle: IProductsRepository 
{ 
    ... Oracle specific data access code 
    you could either use an ORM such as NHibernate, EF, ... or 
    plain ADO.NET with the ODP.NET provider. It's really an implementation 
    detail that has no impact on the MVC application. 
} 

public class ProductsController: Controller 
{ 
    private readonly IProductsRepository _repository; 
    public ProductsController(IProductsRepository repository) 
    { 
     _repository = repository; 
    } 

    public ActionResult Index(int id) 
    { 
     var product = _repository.Get(id); 
     return View(product); 
    } 
} 

あなたは、Oracleデータベースに固有のものになります。この製品のリポジトリの実装を持つことができます残っているのは、Oracleレポジトリの実装をコントローラに渡すようにDIフレームワークを構成することです。

ASP.NET MVCアプリケーションをこの方法で使用すると、データの元の場所から完全に切り離されます。

0

あなたにとって最も簡単な方法は、Entity Frameworkモデルを使用することだと思います。 Darinが述べた必要な抽象レイヤーを追加します。 Oracleを基礎データベースサーバーとして使用できるようにするには、Entity Frameworkプロバイダをまだインストールしていない場合は(http://www.oracle.com/technetwork/topics/dotnet/downloads/oracleefbeta-302521.htmlにチェック)、Entity Frameworkプロバイダをインストールする必要があります。

チェック疑いがあなたのために有用であろうこれらのチュートリアル、: Creating Model Classes with the Entity Framework

関連する問題