Hi AliYilmaz,
You have to rebind Begen after saveChanges() method as you have done in the page load. No need to write the refresh method. Refer the below code.
HTML
<div>
<asp:ScriptManager ID="scriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:LinkButton ID="lnkbegen" title="Beğendim" runat="server" OnClick="lnkbegen_Click"
Text="Count">
</asp:LinkButton><br />
<span class="count-icon"><span class="count" style="right: 5px;" id="spanBegen" runat="server">
<%--<%#Eval("Begen") %>--%></span> </span>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="lnkbegen" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</div>
Code
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
using (TestEntities tr = new TestEntities())
{
spanBegen.InnerText = tr.Yorumlars.ToList().SingleOrDefault(x => x.ID == 1).Begen.ToString();
}
}
}
protected void lnkbegen_Click(object sender, EventArgs e)
{
using (TestEntities tr = new TestEntities())
{
Yorumlar y = tr.Yorumlars.SingleOrDefault(x => x.ID == 1);
y.Begen++;
y.Begenme++;
tr.SaveChanges();
spanBegen.InnerText = y.Begen.ToString();
}
}
Screenshot
