Frage

Ich beschäftige mich also den ganzen Tag mit diesem Problem.Ich habe eine LinqDataSource, die auf mein Modell verweist, und eine GridView, die es nutzt.Wenn ich versuche, die GridView zu aktualisieren, wird die zugrunde liegende Datenquelle nicht aktualisiert.Ich dachte, es könnte mit der LinqDataSource zu tun haben, also habe ich eine SqlDataSource hinzugefügt und das Gleiche passiert.Das ASPX lautet wie folgt (die Code-Behind-Seite ist leer):

  <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
      ConnectionString="Data Source=devsql32;Initial Catalog=Steam;Persist Security Info=True;" 
      ProviderName="System.Data.SqlClient" 
      SelectCommand="SELECT [LangID], [Code], [Name] FROM [Languages]" UpdateCommand="UPDATE [Languages] SET [Code]=@Code WHERE [LangID]=@LangId">
  </asp:SqlDataSource>
  <asp:GridView ID="_languageGridView" runat="server" AllowPaging="True" 
      AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="LangId" 
      DataSourceID="SqlDataSource1">
      <Columns>
          <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
          <asp:BoundField DataField="LangId" HeaderText="Id" ReadOnly="True" />
          <asp:BoundField DataField="Code" HeaderText="Code" />
          <asp:BoundField DataField="Name" HeaderText="Name" />
      </Columns>
  </asp:GridView>
  <asp:LinqDataSource ID="_languageDataSource" ContextTypeName="GeneseeSurvey.SteamDatabaseDataContext" runat="server" TableName="Languages" EnableInsert="True" EnableUpdate="true" EnableDelete="true">
 </asp:LinqDataSource>

Was zum Teufel fehlt mir hier?Dieses Problem macht mich wahnsinnig.

War es hilfreich?

Lösung 2

Es stellte sich heraus, dass wir im Page_Load der Masterseite der ASPX-Datei einen DataBind()-Aufruf hatten, der wahrscheinlich dazu führte, dass der Status der GridView bei jedem Seitenladen gelöscht wurde.

Hinweis: Aktualisierungsparameter für eine LINQ-Abfrage sind nicht erforderlich, es sei denn, Sie möchten sie auf einen Standardwert ungleich Null festlegen.

Andere Tipps

Ihnen fehlen die Abschnitte <UpdateParameters> Ihrer DataSources.

LinqDataSource.UpdateParameters

SqlDataSource.UpdateParameters

Dies ist ein völliger Versuch im Dunkeln, da ich ASP überhaupt nicht verwendet habe.

Ich habe gerade XAML und WPF gelernt, was dem, was Sie oben gepostet haben, sehr ähnlich zu sein scheint, und ich weiß, dass Sie für einige UI-Steuerelemente den Bindungsmodus auf „Zwei-Wege“ festlegen müssen, um Aktualisierungen in beide Richtungen zu erhalten .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top