У меня есть 2 таблицы в базе данных, затем я использую модель данных в Visual Studio (наборы данных), затем использую 2 класса для хранения методов и свойств этих 2 таблиц.
Я хочу сохранить информацию, собранную из веб-формы, в список, но по какой-то причине при попытке добавить список в просмотр состояния я получаю эту ошибку:
Тип '"". "" TableAdapters. "" TableAdapter' в сборке '"", Version = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null' не помечен как сериализуемый.
Я уже пометил класс как сериализуемый, но теперь табличные адаптеры? Вот мой код:
[System.ComponentModel.DataObject]
[Serializable]
public class Example
{
int _example1 = new int();
string _example2;
string _example3;
decimal _example4 = new decimal();
public int example1
{
get { return _example1; }
set { _example1 = value; }
}
public string example2
{
get { return _example2; }
set { _example2 = value; }
}
public string example3
{
get { return _example3; }
set { _example3 = value; }
}
public decimal example4
{
get { return _example4; }
set { _example4 = value; }
}
private tblTestTableAdapter _testAdapter = null;
protected tblTestTableAdapter Adapter
{
get
{
if (_testAdapter == null)
_testAdapter = new tblTestTableAdapter();
return _testAdapter;
}
}
Webform:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
else
{
example = (List<Example>)ViewState["Examples"];
}
}
private List<Example> example;
public List<Example> GetExample()
{
return example;
}
protected void btnRow_Click(object sender, EventArgs e)
{
example = new List<Example>();
Example e = new Example();
e.example1 = Convert.ToInt32(txtE1.Text);
c.example2 = txtE2.Text;
c.example3 = txtE3.Text;
c.example4 = Convert.ToDecimal(txtE4.Text);
example.Add(e);
ViewState["Examples"] = example;
btnRow.Enabled = false;
}
В чем проблема?