118 messaggi dal 09 luglio 2007
Salve, stavo cercando di impostare un controllo datalist innestato in un altro datalist affinchè possa mostrarea a video una relazione uno a molti raggruppata

Per Esempio:
Categoria1
Sottocategoria1
Sottocategoria2
Sottocategoria3

Categoria2
Sottocategoria1
Sottocategoria2
Sottocategoria3

il codice da me costruito è il seguente:
<div>
            <asp:EntityDataSource ID="EntityDataSource3" runat="server" ConnectionString="name=marebluEntities"
                DefaultContainerName="marebluEntities" EntitySetName="tabcatnews">
            </asp:EntityDataSource>
        </div>
        <asp:DataList ID="DataList1" runat="server" DataKeyField="idCatNews" DataSourceID="EntityDataSource3">
            <ItemTemplate>
                Categoria:
                <asp:Label ID="countryidLabel" runat="server" Text='<%# Eval("tipologia") %>'></asp:Label><br />
                <br />
                <asp:Label ID="lblidcat" Visible="false" runat="server" Text='<%# Eval("idCatNews") %>'></asp:Label><br />
                <br />
                <asp:DataList ID="DataList2" runat="server" DataKeyField="idNews" DataSourceID="EntityDataSource4">
                    <ItemTemplate>
                        <asp:Label ID="cityidLabel" runat="server" Text='<%# Eval("titolo") %>'></asp:Label><br />
                        <asp:Label ID="citynameLabel" runat="server" Text='<%# Eval("commenti") %>'></asp:Label><br />
                        <asp:Label ID="countryidLabel" runat="server" Text='<%# Eval("DataInizio") %>'></asp:Label><br />
                        <asp:Label ID="Label1" runat="server" Text='<%# Eval("DataFine") %>'></asp:Label><br />
                        <br />
                    </ItemTemplate>
                </asp:DataList>
                <asp:EntityDataSource ID="EntityDataSource4" runat="server" ConnectionString="name=marebluEntities"
            DefaultContainerName="marebluEntities" EntitySetName="tabnews" Select="it.[titolo],it.[idNews],it.[commenti],it.[DataInizio],it.[DataFine]"
            Where="it.tabnews.idcatnews = @idCatNews">
            <WhereParameters>
                <asp:ControlParameter ControlID="DataList1" Type="Int32" Name="idCatNews" />
            </WhereParameters>
        </asp:EntityDataSource>
            </ItemTemplate>
        </asp:DataList>

ma non ho idea del perchè mi dà il seguente errore:
tabnews' non è un membro di tipo 'marebluModel.tabnews' negli schemi attualmente caricati., vicino identificatore a più parti, riga 8, colonna 1.
Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

Dettagli eccezione: System.Data.EntitySqlException: 'tabnews' non è un membro di tipo 'marebluModel.tabnews' negli schemi attualmente caricati., vicino identificatore a più parti, riga 8, colonna 1.

Errore nel codice sorgente:

Durante l'esecuzione della richiesta Web corrente è stata generata un'eccezione non gestita. Per informazioni sull'origine e la posizione dell'eccezione, vedere l'analisi dello stack dell'eccezione riportata di seguito.

Analisi dello stack:

[EntitySqlException: 'tabnews' non è un membro di tipo 'marebluModel.tabnews' negli schemi attualmente caricati., vicino identificatore a più parti, riga 8, colonna 1.]
System.Data.Common.EntitySql.SemanticResolver.ResolveIdentifierElement(TypeUsage definingType, DbExpression innerExpr, String name, ErrorContext errCtx) +2698122
System.Data.Common.EntitySql.SemanticResolver.ResolveIdentifierChain(String[] names, Int32 suffixIndex, TypeUsage definingType, DbExpression innerExpr, ErrorContext errCtx) +53
System.Data.Common.EntitySql.SemanticResolver.ResolveIdentifier(String[] names, ErrorContext errCtx) +422
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertDotExpr(Expr expr, SemanticResolver sr) +80
System.Data.Common.EntitySql.SemanticAnalyzer.Convert(Expr astExpr, SemanticResolver sr) +90
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertEqualCompArgs(BuiltInExpr astBuiltInExpr, SemanticResolver sr) +38
System.Data.Common.EntitySql.SemanticAnalyzer.<CreateBuiltInExprConverter>b__12(BuiltInExpr bltInExpr, SemanticResolver sr) +15
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertBuiltIn(Expr astExpr, SemanticResolver sr) +95
System.Data.Common.EntitySql.SemanticAnalyzer.Convert(Expr astExpr, SemanticResolver sr) +90
System.Data.Common.EntitySql.SemanticAnalyzer.ProcessWhereClause(DbExpressionBinding source, Expr whereClause, SemanticResolver sr) +43
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertQuery(Expr expr, SemanticResolver sr) +120
System.Data.Common.EntitySql.SemanticAnalyzer.Convert(Expr astExpr, SemanticResolver sr) +90
System.Data.Common.EntitySql.SemanticAnalyzer.ProcessAliasedFromClauseItem(AliasExpr aliasedExpr, SemanticResolver sr) +27
System.Data.Common.EntitySql.SemanticAnalyzer.ProcessFromClauseItem(FromClauseItem fromClauseItem, SemanticResolver sr) +40
System.Data.Common.EntitySql.SemanticAnalyzer.ProcessFromClause(FromClause fromClause, SemanticResolver sr) +237
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertQuery(Expr expr, SemanticResolver sr) +109
System.Data.Common.EntitySql.SemanticAnalyzer.Convert(Expr astExpr, SemanticResolver sr) +90
System.Data.Common.EntitySql.SemanticAnalyzer.ConvertRootExpression(Expr astExpr, SemanticResolver sr) +28
System.Data.Common.EntitySql.SemanticAnalyzer.Analyze(Expr astExpr, DbCommandTree commandTree) +26
System.Data.Common.EntitySql.CqlQuery.AnalyzeSemantics(DbCommandTree builderTree, Expr astExpr, Perspective perspective, ParserOptions parserOptions, Dictionary`2 parameters, Dictionary`2 variables) +789
System.Data.Common.EntitySql.CqlQuery.Compile(DbCommandTree builderTree, String queryText, Perspective perspective, ParserOptions parserOptions, Dictionary`2 parameters, Dictionary`2 variables) +167
System.Data.Objects.EntitySqlQueryState.Parse(DbCommandTree parseTree) +359
System.Data.Objects.EntitySqlQueryState.GetResultType() +43
System.Data.Objects.Internal.ObjectQueryState.get_ResultType() +19
System.Data.Objects.ObjectQuery.GetResultType() +42
System.Web.UI.WebControls.EntityDataSourceQueryBuilder`1.Build(ObjectContext context, Boolean computeCount) +181
System.Web.UI.WebControls.EntityDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments, Creator qbConstructor) +889
System.Web.UI.WebControls.EntityDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +102
System.Web.UI.WebControls.BaseDataList.GetData() +38
System.Web.UI.WebControls.DataList.CreateControlHierarchy(Boolean useDataSource) +153
System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) +54
System.Web.UI.WebControls.BaseDataList.DataBind() +55
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.WebControls.DataList.CreateItem(Int32 itemIndex, ListItemType itemType, Boolean dataBind, Object dataItem) +125
System.Web.UI.WebControls.DataList.CreateControlHierarchy(Boolean useDataSource) +459
System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) +54
System.Web.UI.WebControls.BaseDataList.DataBind() +55
System.Web.UI.WebControls.BaseDataList.EnsureDataBound() +60
System.Web.UI.WebControls.BaseDataList.CreateChildControls() +69
System.Web.UI.Control.EnsureChildControls() +87
System.Web.UI.Control.PreRenderRecursiveInternal() +44
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842


eppure se non ho capito male l'errore mi dice che non esiste la tabella tabnews
mentre invece esiste

Qualcuno può aiutarmi?

Grazie
sanfra1976 wrote:
Salve, stavo cercando di impostare un controllo datalist innestato in un altro datalist affinchè possa mostrarea a video una relazione uno a molti raggruppata

dubito possa andare così. ed inoltre, fai un sacco di query che non servono. se ci sono le relazioni, via di Include(), per poi usare una tecnica come questa:
http://forum.aspitalia.com/forum/post/361509/ADO.NET-Tabelle-Many-Many-Relationship.aspx .

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
118 messaggi dal 09 luglio 2007
Ciao, e grazie per la tua risposta, però ho dimenticato un piccolo particolare, e cioè che io ho 3 tabelle relazionate nel seguente modo
tabcategorianews
idcatnews
tipologia

tabnews
idnews
titolo
descrizione
datainiio
datafine
idcatnews

tabfotonews
idfotonews
commenti
idnews

come puoi ben vedere ho due relazioni uno a molti

inoltre io dovrei prendermi solo una foto per ogni news e non tutte

la query l'avrei realizzata, ma passandomi tutti i dati in una lista

ma poi come faccio ad innestare il tutto nel datalist?

inoltre ho provato a fare l'include di tutte e tre le tabelle


 using(tabaleentities table=new tabaleentities()){

var query=(from t in table.tabcatnews.inlcude("tabnews").include("tabfotonews")
select t).tolist();


}

ma già così mi dà errore

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.