У меня есть контроллер повторителя, который выглядит примерно так:
<asp:Repeater ID="Postrepeater" runat="server" DataSourceID="datasource" >
<h2>
<%#Eval("posttitle") %>
</h2>
<p>
<%#Eval("posttext") %>
</p>
<asp:Button ID="DeleteLinkButton" runat="server" CommandName="Delete" Text="Delete post" />
</asp:Repeater>
Источник данных:
<asp:ObjectDataSource ID="datasource" TypeName="Service" SelectMethod="GetPosts" DataObjectTypeName="Post" runat="server" DeleteMethod="DeletePost" />
И в Service.cs
public List<Posts> GetPosts()
{
DALposts dal = new DALposts();
return dal.GetPosts();
}
public void DeletePost(Posts post)
{
DALPost.DeletePost(post.PostId);
}
Действительно странная вещь состоит в том, что SelectMethod, GetPosts, работает как шарм - так же, как и должен.Но когда я пытаюсь удалить сообщение, DeleteMethod не вызывает никакого метода - страница просто перезагружается и ничего не происходит.Я пытался отладить код, но CommandName = "Delete" вообще ничего не вызывает, и я не получаю никаких ошибок ... Есть идеи?
Думаю, я опубликовал достаточно кода,но если вы думаете, что вам нужно больше - просто скажите мне об этом.
Обновление: После долгих чтений и некоторой помощи здесь, я пришел к выводу, что это не может быть сделано сповторитель, если я не напишу намного больше кода - так что вместо этого я могу использовать FormView.Работает как шарм