Создание нового веб-приложения (я использую Visual Studio 2008 версии 9.0.30729.1 SP)
На странице Aspx замените теги формы следующим: (Возможно, потребуется изменить имя типа, чтобы оно соответствовало вашемуимя страницы)
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True" />
<div>
<asp:DropDownList runat="server" DataSourceID="ObjectDataSource1">
</asp:DropDownList>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Data" TypeName="WebApplication1.WebForm2"
OnObjectCreating="ObjectDataSource1_ObjectCreating"></asp:ObjectDataSource>
</div>
</form>
На странице сервера добавьте эту функцию:
public IEnumerable<string> Data()
{
return new string[] { "some data", "foo", "bar" };
}
А затем добавьте этот обработчик события:
protected void ObjectDataSource1_ObjectCreating(object sender, ObjectDataSourceEventArgs e)
{
e.ObjectInstance = this;
}
Теперь запустите приложение,Я получаю ошибки сценария "Sys is undefined".Большие части автоматического сценария полностью отсутствуют.
Теперь в комментариях к строке экземпляра объекта:
protected void ObjectDataSource1_ObjectCreating(object sender, ObjectDataSourceEventArgs e)
{
//e.ObjectInstance = this;
}
Теперь, когда вы запускаете приложение, ошибок сценария нет.
Что здесь происходит?