none
system.Collections.ListDictionryInternal Is not a valid Win32 application RRS feed

  • Question

  • Grace a Monsieur Nordine MHOUMADI a qui je tiens encore a remercier, ma base de données SQLIte est correctement installé dans mon téléphone

    Application Windows phone 8 avec Base de Données SQLIte

    Nokia lumia 920

    Windows 10 mobile Version 1511 Build 10.0.10586.494

    Sceen 768x1289

    Mon développement je le fais dans

    Windows 10 Pro 64 Bits

    Et Avec

    Visual Studio 2012 Ultimate

    + Microsoft Visual C# 2012

    + Framework 4.6.01055

    En Windows Phone 8

    Et mon problème est celui-ci

    Lorsque j’exécute l’application dans l’émulateur WVGA 512(ES)

    Depuis l’IDE tout se passe bien mais lorsque je l’exécute dans le téléphone

    L’erreur suivante se produit

    Exception non contrôlée du type 'System.BadImageFormatException' en System.Windows.ni.dll

    system.Collections.ListDictionryInternal Is not a valid Win32 application

     (Exception from HRESULT 0x800700C1)

    Je n’ai pas réussi a trouver une explication dans Forums, Google Etc.

    J’ai compile avec les options suvantes :

    Any Cpu                Même Erreur

    x86              Même Erreur

    x86 Activa    Même Erreur

    Arm             Même Erreur

    Toda Plataforma     Même Erreur

     

    Lorsque la fonction suivante s’execute elle me retoune cette erreur

                public string A2_EmlSelect_Fs(string IDReg)

                {

                    try

                    {

                        using (var Cnx = new SQLiteConnection(App.A1_BdDPth_Ps))

                        {

                            List<A0_Mail> myCollection = Cnx.Table<A0_Mail>().ToList<A0_Mail>();

                            ObservableCollection<A0_Mail> Lista = new ObservableCollection<A0_Mail>(myCollection);

                            //                                              Total de Items

                            int L = Lista.Count - 1;

                            //                                              Valeur Iniciale pour Charger la liste

                            int i = 0;

                            //                                              Charge la Liste

                            for (i = 0; i <= L; i++)

                            {

                                if (IDReg == Lista[i].IDReg)

                                {

                                    string Dato = Lista[i].Nom + ": " + Lista[i].Mail;

                                    return Dato;

                                }

                            }

                            return "Kk: Registro Inexistente";

                        }

                    }

                    catch (Exception Ay)

                    {

                        string M = Ay.Source + "-" + Ay.Data + "-" + Ay.Message + "-" + Ay.InnerException;

                        return M;

                    }

                }

    Je tiens a remercier d’avance Aide, Links ou quoi que ce soit qui me tire de cet impasse ou je suis complètement Collé...

     

    Merci d’avance


    Atentamente [Best Regards] [Amicalement] Ivan Pequeño Andrade

    lundi 5 décembre 2016 21:25

Réponses

  • Bonjour,

    Tout d'abord je vous remercie :)

    Pour répondre à votre post, je vous conseil fortement de travailler qu'en asynchrone en SQLite.

    Du coup votre code devrait être : 

    #region Fields private ObservableCollection<A0_Mail> _lista; #endregion #region Properties public ObservableCollection<A0_Mail> Lista { get { return _lista ?? (_lista = new ObservableCollection<A0_Mail>()); } } #endregion #region Methods public async Task<string> A2_EmlSelect_Fs(string IDReg) { try { using (SQLiteAsyncConnection Cnx = new SQLiteAsyncConnection(App.A1_BdDPth_Ps)) { List<A0_Mail> myCollection =await Cnx.Table<A0_Mail>().ToListAsync(); ObservableCollection<A0_Mail> Lista = new ObservableCollection<A0_Mail>(); if(myCollection!=null && myCollection.count>0) {

    Lista.Clear();

    foreach (A0_Mail item in myCollection) { Lista.Add(item); } // Total de Items int L = Lista.Count - 1; // Valeur Iniciale pour Charger la liste int i = 0; // Charge la Liste for (i = 0; i <= L; i++) { if (IDReg == Lista[i].IDReg) { string Dato = Lista[i].Nom + ": " + Lista[i].Mail; return Dato; } } return "Kk: Registro Inexistente"; } } catch (Exception Ay) { string M = Ay.Source + "-" + Ay.Data + "-" + Ay.Message + "-" + Ay.InnerException; return M; } } } } #endregion

    N'oubliez pas de vérifier les accolades si j'ai bien tout fermé :)

    Ce lien vous guidera pour l'utilisation d'une base de données SQLite pour votre type d'application

    https://www.codeproject.com/articles/826602/using-sqlite-as-local-database-with-universal-apps


    Please remember to close your threads by marking helpful posts as answer and then start a new thread if you have a new question. Please don't ask several questions in the same thread. SVP utiliser le Marquer comme reponse; sur les reponses qui vous aide car cela permet aux personnes qui peuvent rencontrer le meme probleme que vous, de retrouver rapidement quelle est la reponse qui a resolu leur probleme. De plus, cela encourage aussi la personne qui a repondu a votre question, et de repondre aux suivantes...




    mardi 6 décembre 2016 16:05
  • CherNordine (Si je peux me pertmettre)

    (Sans accents francais car...)

    Encore une fois merci

    Je plonge dans le Link


    Atentamente [Best Regards] [Amicalement] Ivan Pequeño Andrade

    mardi 6 décembre 2016 19:16

Toutes les réponses

  • Bonjour,

    Tout d'abord je vous remercie :)

    Pour répondre à votre post, je vous conseil fortement de travailler qu'en asynchrone en SQLite.

    Du coup votre code devrait être : 

    #region Fields private ObservableCollection<A0_Mail> _lista; #endregion #region Properties public ObservableCollection<A0_Mail> Lista { get { return _lista ?? (_lista = new ObservableCollection<A0_Mail>()); } } #endregion #region Methods public async Task<string> A2_EmlSelect_Fs(string IDReg) { try { using (SQLiteAsyncConnection Cnx = new SQLiteAsyncConnection(App.A1_BdDPth_Ps)) { List<A0_Mail> myCollection =await Cnx.Table<A0_Mail>().ToListAsync(); ObservableCollection<A0_Mail> Lista = new ObservableCollection<A0_Mail>(); if(myCollection!=null && myCollection.count>0) {

    Lista.Clear();

    foreach (A0_Mail item in myCollection) { Lista.Add(item); } // Total de Items int L = Lista.Count - 1; // Valeur Iniciale pour Charger la liste int i = 0; // Charge la Liste for (i = 0; i <= L; i++) { if (IDReg == Lista[i].IDReg) { string Dato = Lista[i].Nom + ": " + Lista[i].Mail; return Dato; } } return "Kk: Registro Inexistente"; } } catch (Exception Ay) { string M = Ay.Source + "-" + Ay.Data + "-" + Ay.Message + "-" + Ay.InnerException; return M; } } } } #endregion

    N'oubliez pas de vérifier les accolades si j'ai bien tout fermé :)

    Ce lien vous guidera pour l'utilisation d'une base de données SQLite pour votre type d'application

    https://www.codeproject.com/articles/826602/using-sqlite-as-local-database-with-universal-apps


    Please remember to close your threads by marking helpful posts as answer and then start a new thread if you have a new question. Please don't ask several questions in the same thread. SVP utiliser le Marquer comme reponse; sur les reponses qui vous aide car cela permet aux personnes qui peuvent rencontrer le meme probleme que vous, de retrouver rapidement quelle est la reponse qui a resolu leur probleme. De plus, cela encourage aussi la personne qui a repondu a votre question, et de repondre aux suivantes...




    mardi 6 décembre 2016 16:05
  • CherNordine (Si je peux me pertmettre)

    (Sans accents francais car...)

    Encore une fois merci

    Je plonge dans le Link


    Atentamente [Best Regards] [Amicalement] Ivan Pequeño Andrade

    mardi 6 décembre 2016 19:16
  • Je vous en prie. En revanche vous n'avez pas sélectionné ma réponse comme étant celle du post. Pouvez-vous statuter ma réponse comme celle de votre Question s'il vous plaît? Merci d'avance

    Please remember to close your threads by marking helpful posts as answer and then start a new thread if you have a new question. Please don't ask several questions in the same thread. SVP utiliser le Marquer comme reponse; sur les reponses qui vous aide car cela permet aux personnes qui peuvent rencontrer le meme probleme que vous, de retrouver rapidement quelle est la reponse qui a resolu leur probleme. De plus, cela encourage aussi la personne qui a repondu a votre question, et de repondre aux suivantes...

    mardi 6 décembre 2016 21:02