Как передать класс в другой класс в коде? - PullRequest
2 голосов
/ 03 августа 2010

Как передать класс в другой класс в коде?

Когда я отлаживаю и проверяю myCategoryObj на странице Default.aspx, я вижу, что объект находится в отладке. Что я делаю неправильно?

Я знаю, что могу создать объект в Default.aspx, но мне не нужно, чтобы я мог вызывать уровень бизнес-логики и запрашивать объект обратно, а затем заполнять объект и передавать его обратно в бизнес-логику Слой, который нужно сохранить (вставить или обновить).

Надеюсь, это имеет смысл.

Default.aspx

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SC1.Models.OBJ;
using SC1.Models.BLL;
using SC1.Models.DAL;

namespace SC1
{
  public partial class Default : System.Web.UI.Page
  {
    protected void Page_Load(Object sender, EventArgs e)
    {
      // I know I could do this but I don't want to unless I have too.
      //Category categoryObj = new Category();

      CategoryBLL myCategoryBLL = new CategoryBLL();

      Object myCategoryObj = myCategoryBLL.CategoryNew();

      // How do I make the code below work or what am I doing wrong.  
      myCategoryObj.Name = "test";

      string test = "";

    }
  }
}

CategoryBLL.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using SC1.Models.DAL;
using SC1.Models.OBJ;

namespace SC1.Models.BLL
{
  public class CategoryBLL
  {
    // Create a page object
    Category myCategoryObject = new Category();

    // Create a Data Acces Layer Object
    CategoryDAL myCategoryDAL = new CategoryDAL();


    public CategoryBLL()
    {
    }

    public DataSet Select()
    {
      return (myCategoryDAL.Select());
    }

    public Object CategoryNew()
    {
      return myCategoryObject;
    }



  }
}

CategoryDAL.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace SC1.Models.DAL
{
  public class CategoryDAL
  {
    public CategoryDAL()
    {
    }
    string connStr = ConfigurationManager.ConnectionStrings["staceys_cakesConnectionString"].ConnectionString;

    // select all
    public DataSet Select()
    {
      SqlConnection sqlConnection1 = new SqlConnection();
      string SqlString = "select * from Categories";
      SqlDataAdapter da = new SqlDataAdapter(SqlString, connStr);
      DataSet ds = new DataSet();
      da.Fill(ds, "Categories");
      return (ds);
    }
    // save
    // insert
    // update
    // delete

  }
}

Category.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace SC1.Models.OBJ
{
  public class Category
  {
    public int CategoryID { get; set; }
    public int ParentID { get; set; }
    public string Name { get; set; }
    public int DisplayOrder { get; set; }
    public bool Active { get; set; }

    public Category(){
    }

  }
}

1 Ответ

2 голосов
/ 03 августа 2010

изменение

Object myCategoryObj = myCategoryBLL.CategoryNew()

до

Category myCategoryObj = myCategoryBLL.CategoryNew()

, а также

публичный объект CategoryNew () { return myCategoryObject; }

до

публичная категория КатегорияNew () { return myCategoryObject; }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...