2011-12-14 3 views
1

でビジネスオブジェクトを参照することはできません。ObjectDataSourceのは、私は次のようでしたにApp_Code

  1. は、単純なWebサイトを作成する
  2. にApp_Codeでビジネス・オブジェクトを作成しますApp_Dataにフォルダ
  3. でのNorthwindデータベース接続を追加SQLドラッグへのDataフォルダのLINQでにApp_Code内にApp_Code
  4. creatの中ビズフォルダ内のビジネス・オブジェクトのフォルダ
  5. bal.csクラスそこ
  6. における電子の顧客テーブル
  7. のDropDownList
  8. で新しいpage.aspx
  9. ドラッグは、データ・ソース
  10. を設定してくださいBAL中の私のObjectDataSourceコントロールのページ

なしにObjectDataSourceの追加.csはこのクラスを見ることができます。 何をすべきか?????????? !!!!

using System; 
using System.Collections.Generic; 
using System.Linq; 
using Data; 

public class BAL 
{ 

    public List<String> GetCountries() 
    { 
     using (var context = new NORTHWINDDataContext()) 
     { 
      return (from c in context.customers 
        select c.country).Tolist(); 
     } 
    } 
    public List<customer> GetCustomersByCountry(string country) 
    { 
     using (var context = new NORTHWINDDataContext()) 
     { 

      return (from c in context.customers 
        where c.country == country 
        select c).Tolist(); 
     } 

    } 
    public customer GetCustomer(string custID) 
    { 
     using (var context = new NORTHWINDDataContext()) 
     { 
      return (from c in context.customers 
        where c.CustomerID == custID 
        select c).singleOrDefalt(); 
     } 
    } 
} 

答えて

1

設定を手動ObjectDataSource

<asp:ObjectDataSource id="someid" runat="server" TypeName="BAL" 
         SelectMethod="GetCountries"> 
</asp:ObjectDataSource> 
+0

私はこれを.aspxページで行いましたが、class balが表示されましたが、コンパイルエラーが発生しましたエラー型または名前空間名 'Customer'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありません) –

+0

@eng sara:Customerクラスはどこで定義しましたか? –

1

は、App_Codeフォルダー内のクラスのプロパティを表示するようにしてください。

ファイル "Build Action"が "content"に設定されていると、これが起こりそうです。 クラスを "コンパイル"に変更するとすぐに、ObjectDataSourceリストに表示され始めます。