Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2120 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  9  10  11  ..  77  78  79  80  81  82
Auteur Sujet :

[Topic unique] .Net @ Prog

n°2041372
ov3rflow
How Do You Do, Fellow Kids?
Posté le 10-12-2010 à 16:39:37  profilanswer
 

Reprise du message précédent :

TotalRecall a écrit :

Petit message express pour signaler une MAJ de la section outils/plugins du premier post.  
Au passage, pour ceux qui comme moi utilisent Resharper/Refactor!/Visual AssistX n'hésitez pas à partager vos avis et astuces :).
 
Si j'ai le courage ce week end je regarderai un peu les dernières questions...
Bonne soirée à tous !


 
Merci  :jap:

mood
Publicité
Posté le 10-12-2010 à 16:39:37  profilanswer
 

n°2041466
TotalRecal​l
Posté le 11-12-2010 à 00:25:57  profilanswer
 

massanu a écrit :

Petite question à vous :)
...


Je ne comprend pas le fond du problème, puisque il faut identifier au long de la vie d'une information sa provenance pourquoi ne pas lier celle-ci à un Id propre au fichier d'origine, tout bêtement ?  
Par ailleurs même si je comprend le workflow sans rien connaître des données initiales, leur structure et les transformations appliquées c'est difficile de te répondre car on n'a qu'une vision très partielle du problème.


---------------
Topic .Net - C# @ Prog
n°2041553
kaiser52
Posté le 12-12-2010 à 00:10:55  profilanswer
 

Petit HS à la con.
 
Avec mon école je peux avoir des licences d’IIS (WS2008).
 
j'aurais voulus savoir quel config économe (Entends par la petite aussi, mais pas trop :whistle: ) pourrait être utilisé pour faire tourner un IIS en H24 ?
 
Tout cela pour héberger du Silverlight / ASP .NET.
 
Merci d'avance.
 
Edit :
http://technet.microsoft.com/fr-fr [...] r/bb414778
 
Quelqu'un a-il déjà essayé d'hebergé ça chez lui ?
Qui de l'expérience utilisateur avec un proco sous les 2ghz ?
 
Avec genre un Aspire Revo.  :whistle:

Message cité 2 fois
Message édité par kaiser52 le 12-12-2010 à 00:22:46

---------------
Benchmarks du peuple - Crysis War - Vide grenier ! - nVIDIA Tegra
n°2041569
mareek
Et de 3 \o/
Posté le 12-12-2010 à 10:20:10  profilanswer
 

kaiser52 a écrit :

Petit HS à la con.
 
Avec mon école je peux avoir des licences d’IIS (WS2008).
 
j'aurais voulus savoir quel config économe (Entends par la petite aussi, mais pas trop :whistle: ) pourrait être utilisé pour faire tourner un IIS en H24 ?
 
Tout cela pour héberger du Silverlight / ASP .NET.
 
Merci d'avance.
 
Edit :
http://technet.microsoft.com/fr-fr [...] r/bb414778
 
Quelqu'un a-il déjà essayé d'hebergé ça chez lui ?
Qui de l'expérience utilisateur avec un proco sous les 2ghz ?
 
Avec genre un Aspire Revo.  :whistle:


N'importe quelle machine fera l'affaire mais il ne faut pas espérer faire tourner le nouveau youtube sur un nettop.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°2041580
TotalRecal​l
Posté le 12-12-2010 à 12:03:07  profilanswer
 

C'est clair, ce qui importe le plus c'est l'applicatif à faire tourner et le nombre d'utilisateur simultanés dessus (modeste dans ton cas je suppose). Faut juste pas rogner sur la RAM.
Pas possible d'avoir une 2003 R2 ? C'est bcp plus léger et ça fait tourner les mêmes choses dans l'absolu (je doute que tu aies vraiment besoin de IIS 7).

 

Edit : ah ouais je viens de voir ce qu'est un Aspire Revo... vas falloir bien optimiser quand même :D. Ca peut tourner H24 sans entrer en fusion ces trucs ?
Tu es sûr que 2008 Server x64 s'installe dessus ? Les OS servers sont plus susceptibles pour les drivers que les versions grand public.

Message cité 1 fois
Message édité par TotalRecall le 12-12-2010 à 12:06:09

---------------
Topic .Net - C# @ Prog
n°2041588
kaiser52
Posté le 12-12-2010 à 12:12:59  profilanswer
 

TotalRecall a écrit :

C'est clair, ce qui importe le plus c'est l'applicatif à faire tourner et le nombre d'utilisateur simultanés dessus (modeste dans ton cas je suppose). Faut juste pas rogner sur la RAM.
Pas possible d'avoir une 2003 R2 ? C'est bcp plus léger et ça fait tourner les mêmes choses dans l'absolu (je doute que tu aies vraiment besoin de IIS 7).
 
Edit : ah ouais je viens de voir ce qu'est un Aspire Revo... vas falloir bien optimiser quand même :D. Ca peut tourner H24 sans entrer en fusion ces trucs ?
Tu es sûr que 2008 Server x64 s'installe dessus ? Les OS servers sont plus susceptibles pour les drivers que les versions grand public.


 
Ha clairement, si j'atteints déjà 50 users je serais très content !  
Faut déjà que je finisse de dev ^^, et vue que c'est un projet perso, ça risque d'être long ! (Même si j'ai déjà une préversion php, mais ça me saoul le php)
 
Sinon je crois que le 2003 n'est plus d'actu, j'irais jeter un œil se soir si j'ai le temps. :jap:
 
Là j'ai récupérer un vieux vieux PC (P4 3Ghz, cg intégré).
Mais c'est gros, bruyant et énergivore !
Je vais me faire les mains sur les réglages avec ce PC. :jap:
 
Puis après maintes recherche, même si l'atom de l'acer est sympas (version dual core), il serait plus adapté pour le partage de fichier / streaming (Home server quoi :/), qu'un IIS ^^.
 
Et si j'ai le courage je testerais sur mon Core 2 CULV (SU7300), voir si je peu me tourner vers un PC portable. :)
 
Edit :
Pour ce qui est des drivers, j'ai trouvé un petit tuto, mais c'était déjà l'apocalypse pour WHS ^^
 


Message édité par kaiser52 le 12-12-2010 à 12:14:16

---------------
Benchmarks du peuple - Crysis War - Vide grenier ! - nVIDIA Tegra
n°2041672
TotalRecal​l
Posté le 12-12-2010 à 22:19:27  profilanswer
 

Tiens nous au courant de tes tests, je suis curieux :D :jap:

 

Deux petites lectures sympas pour les développeurs moyens mais curieux :

  • http://www.e-naxos.com/Blog/post/2 [...] uit-!.aspx > Personnellement je me suis fait piéger à la moitié des questions. Ce ne sont pas des trucs vraiment utiles au quotidien mais bons à connaître pour le jour où on doit y répondre. Ca doit aussi pouvoir plaire à ceux qui font passer des tests en entretien :D
  • http://www.yoda.arachsys.com/csharp/parameters.html Celui là par contre est super intéressant, on y apprendra forcément quelque chose et pourtant ça devrait faire parti des fondamentaux compris par tous les développeurs OO.

Message cité 1 fois
Message édité par TotalRecall le 12-12-2010 à 22:20:03

---------------
Topic .Net - C# @ Prog
n°2041788
massanu
Posté le 13-12-2010 à 14:17:10  profilanswer
 

TotalRecall a écrit :


Je ne comprend pas le fond du problème, puisque il faut identifier au long de la vie d'une information sa provenance pourquoi ne pas lier celle-ci à un Id propre au fichier d'origine, tout bêtement ?  
Par ailleurs même si je comprend le workflow sans rien connaître des données initiales, leur structure et les transformations appliquées c'est difficile de te répondre car on n'a qu'une vision très partielle du problème.


 
 
Oui c'est vrai que j'ai exposé très brievement :p
 
Mais au final, j'ai opté pour une autre méthode, plus simple pour moi :
 
- Lecture du fichier excel uploadé par l'utilisateur
Pour  chaque ligne lu :
    - Création d'une instance d'un objet de type Info (avec les données de la ligne en cours)
    - Appel de Info.Save() qui appel une PS qui insère l'objet dans les 3 tables :)
 
Tout fonctionne, mais (oui il y'a toujours un mais :) ) je souhaite (vu que la durée du traitement peut varié selon la taille du fichier) effectuer ceci en Ajax
 
Voici le bout de la page Asp :
 

Code :
  1. <asp:scriptmanager ID="Scriptmanager1" runat="server"  OnAsyncPostBackError="ScriptManager1_AsyncPostBackError"/>
  2.    
  3.                                 <asp:UpdatePanel ID="UP1" runat="server">
  4.                                     <ContentTemplate>
  5.                                         <%= DateTime.Now.ToString() %>
  6.                                         <br />
  7.                                         <asp:Button ID="btn_GetTime" runat="server" Text="Get Current Time" OnClick="btnSend_Click" />
  8.                                         <asp:UpdateProgress ID="UpdateProgress1" AssociatedUpdatePanelID="UP1" runat="server" >
  9.                                             <ProgressTemplate>
  10.                                             <img id="Img1" src="http://www.cia-france.com/images/ajax-preloader.gif" />
  11.                                             </ProgressTemplate>
  12.                                         </asp:UpdateProgress>
  13.                                         <asp:Label ID="lblResult" runat="server"></asp:Label>
  14.                                     </ContentTemplate>
  15.                                    
  16.                                 </asp:UpdatePanel>                               
  17.                                 <br />
  18.                                
  19.                                 <div id="AlertDiv">
  20.                                     <div id="AlertMessage">
  21.                                     </div>
  22.                                     <br />
  23.                                     <div id="AlertButtons" >
  24.                                         <input id="OKButton" type="button" value="OK"
  25.                                                 runat="server" onclick="ClearErrorState()" />
  26.                                     </div>
  27.                                 </div>


 

Code :
  1. <script type="text/javascript" language="javascript">
  2.              var divElem = 'AlertDiv';
  3.              var messageElem = 'AlertMessage';
  4.              var errorMessageAdditional = 'Please try again.';
  5.              var bodyTag = 'bodytag';
  6.              Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
  7.              Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(startRequest);
  8.              function ToggleAlertDiv(visString) {
  9.                  if (visString == 'hidden') {
  10.                      $get(bodyTag).style.backgroundColor = 'white';
  11.                  }
  12.                  else {
  13.                      $get(bodyTag).style.backgroundColor = 'gray';
  14.                  }
  15.                  var adiv = $get(divElem);
  16.                  adiv.style.visibility = visString;
  17.              }
  18.              function ClearErrorState() {
  19.                  $get(messageElem).innerHTML = '';
  20.                  ToggleAlertDiv('hidden');
  21.              }
  22.              function EndRequestHandler(sender, args) {
  23.                  if (args.get_error() != undefined) {
  24.                      var errorMessage;
  25.                      if (args.get_response().get_statusCode() == '200') {
  26.                          errorMessage = args.get_error().message;
  27.                      }
  28.                      else {
  29.                          // Error occurred somewhere other than the server page.
  30.                          errorMessage = 'An unspecified error occurred. ';
  31.                      }
  32.                      args.set_errorHandled(true);
  33.                      ToggleAlertDiv('visible');
  34.                      $get(messageElem).innerHTML = errorMessage;
  35.                  }
  36.              }
  37.              function startRequest(sender, args) {
  38.                  //disable button during the AJAX call
  39.                  document.getElementById('<%=btn_GetTime.ClientID%>').disabled = true;
  40.                  document.getElementById('<%=btn_GetTime.ClientID%>').value = 'Getting time..';
  41.              }           
  42.             </script>


 
 
Quand j'ai une exception dans mon code C# j'obtiens bien une popupmodal avec le message de l'exception, mais quand le traitement se termine bien j'obtiens la popupmodale avec cette erreur ci :
 
Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled. Details: Error parsing near 'lbUNsYXNzZR4QVG9wU2VsZWN0ZWRDbGFzc2UeF1R'
 
 
J'ai pris 2 jours pour chercher une solution, je ne l'ai pas trouvé.
 
Donc a défaut de vous demander quel pourrais être le problème, je préfère que l'on discute plutot de la (ou les) meilleurs méthodes pour aborder ce genre de problématique :
Traitement server long en Asp.Net + Ajax
 
:jap:


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2041883
TotalRecal​l
Posté le 13-12-2010 à 21:28:40  profilanswer
 

Il apporte quoi le JS ? J'ai l'impression qu'en webform on peut faire tout ce que tu décris juste avec les contrôles Ajax de base (et éventuellement un coup d'ajax control toolkit par au dessus).


---------------
Topic .Net - C# @ Prog
n°2041924
massanu
Posté le 14-12-2010 à 09:32:52  profilanswer
 

TotalRecall a écrit :

Il apporte quoi le JS ? J'ai l'impression qu'en webform on peut faire tout ce que tu décris juste avec les contrôles Ajax de base (et éventuellement un coup d'ajax control toolkit par au dessus).


 
 
J'ai tenté avec le Ajax Control Toolkit, cependant je cherche une solution qui permet également de gérer les exceptions et de les renvoyer à l'utilisateur.


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
mood
Publicité
Posté le 14-12-2010 à 09:32:52  profilanswer
 

n°2042406
alien cons​piracy
hardtrance addict
Posté le 15-12-2010 à 16:02:34  profilanswer
 

J'en ai marre de mon job :/

 

Le gars qu'on m'a présenté comme le developper senior a vaguement entendu parlé de mvvm et entity mais il préfère "garder le contrôle" et donc écrit toutes ses requêtes sql directements dans les gestionnaires d'événement (quand il écrit pas un lib d'accès à la bd qui fonctionne qu'a moitié). :cry:

 

Et c'est qui qui récupère le projet après, avec des clients pas comptant parce que ca bug partout ? :cry:^2

Message cité 4 fois
Message édité par alien conspiracy le 15-12-2010 à 16:03:45
n°2042419
kaiser52
Posté le 15-12-2010 à 16:23:33  profilanswer
 

alien conspiracy a écrit :

J'en ai marre de mon job :/  
 
Le gars qu'on m'a présenté comme le developper senior a vaguement entendu parlé de mvvm et entity mais il préfère "garder le contrôle" et donc écrit toutes ses requêtes sql directements dans les gestionnaires d'événement (quand il écrit pas un lib d'accès à la bd qui fonctionne qu'a moitié). :cry:
 
Et c'est qui qui récupère le projet après, avec des clients pas comptant parce que ca bug partout ? :cry:^2


 
 :ouch:  
 
Pas Entity et pas MVVM !
 
 :ouch:  :ouch:


---------------
Benchmarks du peuple - Crysis War - Vide grenier ! - nVIDIA Tegra
n°2042421
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 15-12-2010 à 16:32:29  profilanswer
 

kaiser52 a écrit :

:ouch:  
 
Pas Entity et pas MVVM !
 
 :ouch:  :ouch:


Ba si c'est un gars qui a fait du 2.0 toute sa vie, c'est "normal". Après, qu'il ne veuille pas s'intéresser au truc est plus ennuyeux (voire pas pro du tout). Mais faut voir aussi s'il n'y a pas de contrainte extérieure. Par exemple, je voulais utiliser du Linq ici mais on m'a dit que ba non, le runtime 3.5 est pas déployé sur les postes clients, donc c'est mort, pas de Linq dans mon code [:dawao]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°2042506
ov3rflow
How Do You Do, Fellow Kids?
Posté le 15-12-2010 à 21:13:27  profilanswer
 

alien conspiracy a écrit :

J'en ai marre de mon job :/

 

Le gars qu'on m'a présenté comme le developper senior a vaguement entendu parlé de mvvm et entity mais il préfère "garder le contrôle" et donc écrit toutes ses requêtes sql directements dans les gestionnaires d'événement (quand il écrit pas un lib d'accès à la bd qui fonctionne qu'a moitié). :cry:

 

Et c'est qui qui récupère le projet après, avec des clients pas comptant parce que ca bug partout ? :cry:^2

 

Ca dépend aussi de son parcours.

 

Moi je fais des petites applis ASP.NET orienté système/Infra de messagerie (En gros les données sont récupérées de AD ou via powershell), ou des exe de traitements. J'ai donc jamais eu l'occaz d'utiliser entity ou wpf/silverlight [:spamafote]

 

Avant ça je faisais du 2.0

  

Mais en tout cas je compatis, j'ai eu un chef de projet désigné comme expert qui m'a dis "Bah moi de toute façon j'ai jamais rien compris à l'objet"


Message édité par ov3rflow le 15-12-2010 à 21:14:21
n°2042513
TotalRecal​l
Posté le 15-12-2010 à 21:48:32  profilanswer
 

alien conspiracy a écrit :

J'en ai marre de mon job :/  
...


 
Je compatis, j'ai bossé dans une agence où le .Net était vu comme un truc maléfique extrêmement lourd où le moindre développement exige 3 mois, et où le meilleur langage du monde était l'ASP syntaxe VB "car il permettait de tout faire même sur des sites très complexes comme ceux qu'on maintient qui sont le top du marché sans aucun besoin d'analyse en amont et sans s'emmerder avec ces débilités d'objets et autres trucs de pisseurs de codes technophiles inutiles dans le monde réel."


---------------
Topic .Net - C# @ Prog
n°2042514
TotalRecal​l
Posté le 15-12-2010 à 21:49:07  profilanswer
 

kaiser52 a écrit :

 

:ouch:

 

Pas Entity et pas MVVM !

 

:ouch:  :ouch:


Bon, pour MVVM je lui en voudrais pas vu que ça donne parfois :whistle:

 

edit : ça me fait penser à ça : http://www.e-naxos.com/Blog/post/2 [...] ngeur.aspx


Message édité par TotalRecall le 15-12-2010 à 21:50:56

---------------
Topic .Net - C# @ Prog
n°2042957
massanu
Posté le 17-12-2010 à 18:14:18  profilanswer
 

Bonjour la compagnie :hello:
 
Petite question au sujet des events handler SQL ( en Asp.net )
 
L'objet SqlConnection possède une propriété FireInfoMessageEventOnUserErrors qui permet de catcher les évenements RAISERROR envoyé par une procédure stockée
 
Donc prenons cette PS :  
 

Code :
  1. RAISERROR('Batch1',0,10) WITH NOWAIT
  2. WAITFOR DELAY '00:00:10'
  3. RAISERROR('Batch2',0,27) WITH NOWAIT
  4. WAITFOR DELAY '00:00:10'
  5. RAISERROR('Batch3',0,35) WITH NOWAIT


 
Elle renvoie 3 Messages Batch1, Batch2 et Batch3 à 10 secondes d'intervalles.
 
Le problème est que j'aimerais afficher ces messages dans l'ordre d'arrivé à travers un UpdatePanel, cependant ca ne fonctionne pas, seul le dernier évenement est affiché dans mon Label.
 
Voici le code :)
 

Code :
  1. protected void btnQuery_Click(object sender, EventArgs e)
  2.     {     
  3.         //create a new Connection object using the connection string
  4.         SqlConnection objConnect = new SqlConnection("ma chaine de connection" );
  5.         objConnect.FireInfoMessageEventOnUserErrors = true;
  6.         objConnect.InfoMessage += new SqlInfoMessageEventHandler(conn_InfoMessage);
  7.         ArrayList alParameters = new ArrayList();
  8.         //create a new Command using the CommandText and Connection object
  9.         SqlCommand objCommand = new SqlCommand("TestQueryMessage", objConnect);
  10.         objCommand.CommandType = CommandType.StoredProcedure;
  11.         try
  12.         {
  13.             objConnect.Open();
  14.             objCommand.ExecuteNonQuery();
  15.         }
  16.         catch (Exception objError)
  17.         {   
  18.             throw;
  19.         }
  20.         finally
  21.         {
  22.             objCommand.Parameters.Clear();
  23.             objConnect.Close();           
  24.         }
  25.     }


 

Code :
  1. void conn_InfoMessage(object sender, SqlInfoMessageEventArgs e)
  2.     {   
  3.         lblQuery1.Text=  e.Message + "-" + e.Errors[0].State;
  4.     }


 
 

Code :
  1. <asp:ScriptManager ID="ScriptManager1" runat="server">
  2.         </asp:ScriptManager>
  3.         <asp:UpdatePanel ID="UpdatePanel1" runat="server" >
  4.                                 <ContentTemplate>
  5.                                     <asp:Button ID="btnQuery" runat="server" Text="Query" OnClick="btnQuery_Click" />
  6.                                     <asp:Label ID="lblQuery1" runat="server"></asp:Label>
  7.                                  
  8.                                 </ContentTemplate>
  9.                             </asp:UpdatePanel>


 
J'ai également essayé en mettant mon UpdatePanel a Conditional + un UpdatePanel1.Update() dans conn_InfoMessage()
 
Une idée ? :??:


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2042975
kaiser52
Posté le 17-12-2010 à 20:29:06  profilanswer
 

TotalRecall a écrit :

Tiens nous au courant de tes tests, je suis curieux :D :jap:
 
Deux petites lectures sympas pour les développeurs moyens mais curieux :  

  • http://www.e-naxos.com/Blog/post/2 [...] uit-!.aspx > Personnellement je me suis fait piéger à la moitié des questions. Ce ne sont pas des trucs vraiment utiles au quotidien mais bons à connaître pour le jour où on doit y répondre. Ca doit aussi pouvoir plaire à ceux qui font passer des tests en entretien :D
  • http://www.yoda.arachsys.com/csharp/parameters.html Celui là par contre est super intéressant, on y apprendra forcément quelque chose et pourtant ça devrait faire parti des fondamentaux compris par tous les développeurs OO.  



 
Bon bah j'ai accès qu'a un WS2008 64bits XD
Et le P4 que j'ai n'est pas la version compatible 64bits. :/
 
Faudrait que j'installe un double boot sur mon PC portable (Core 2 duo CULV SU7300), mais ma copine part avec durant les vacances (Genre, après demain XD). :/
 
Donc il va me falloir une autre alternative !
 


---------------
Benchmarks du peuple - Crysis War - Vide grenier ! - nVIDIA Tegra
n°2043128
TotalRecal​l
Posté le 19-12-2010 à 15:33:50  profilanswer
 

Pas de bol. Du coup là ça sort complètement du cadre du topic, désolé.

 

massanu > dans un contexte Web/ajax j'aurai un peu tendance à me méfier de ce qui se fait par appel de délégué lors d'un événement si je dois écrire dans la page...

 

Déjà, si au lieu d'écrire le label lors de l'événement tu stockes les messages dans un truc complètement indépendant du contexte graphique, ils arrivent bien tous les 3 ? Aux intervalles attendus ? (Pour tester colle ça dans une chaîne statique avec un DateTime.Now en plus).

 

Et si tu forcais depuis le navigateur le rafraichissement du UpdatePanel avec la méthode qui interroge le navigateur à intervalle réguliers ? (je sais plus comment ça s'appelle mas c'est tout con à mettre en place).

 

edit : genre http://msdn.microsoft.com/fr-fr/library/cc295400.aspx


Message édité par TotalRecall le 19-12-2010 à 15:36:32

---------------
Topic .Net - C# @ Prog
n°2043164
massanu
Posté le 19-12-2010 à 19:37:43  profilanswer
 

Salut a tous :)
 
Bon j'avance sur mon problème de récupération des erreurs et warnings SQL (RAISE ERROR) de manière dynamique.
 
 
Je suis finalement partit sur l'idée suivante :  
 
 
http://hfr-rehost.net/self/pic/5cbe843ad57f5be9e36a631ff767da6548c1f023.jpeg
 
 
Mon soucis est au niveau du stockage des Messages.  
En effet la Webmethod qui lance la PS et reçoit les Messages en retour dois les stockées quelque part afin que la seconde WebMethod puisse les récupérer et les renvoyer à la page Aspx.
 
D'après ce que j'ai lu, un webservice se doit d'être StateLess dans ce cas comment gérer cette problématique ?
 
Je ne sais pas si je suis clair :??:
 
En tout cas un petit coup de pouce serais le bienvenue :jap:
 
Merci :) :)


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043175
TotalRecal​l
Posté le 19-12-2010 à 21:02:32  profilanswer
 

T'as monté le webservice uniquement pour ça ou il a une autre raison d'être ? :eek:
Parce que sinon, ma solution était ultra simple et devait résoudre ton problème...
 
Sinon pour les WS, tu peux gérer une notion de session pour chaque appelant, cf les attributs WCF qui vont bien. Tu peux aussi le faire indépendamment...


---------------
Topic .Net - C# @ Prog
n°2043194
massanu
Posté le 19-12-2010 à 23:55:24  profilanswer
 

TotalRecall a écrit :

T'as monté le webservice uniquement pour ça ou il a une autre raison d'être ? :eek:
Parce que sinon, ma solution était ultra simple et devait résoudre ton problème...
 
Sinon pour les WS, tu peux gérer une notion de session pour chaque appelant, cf les attributs WCF qui vont bien. Tu peux aussi le faire indépendamment...


 
 
En fait j'ai essayé toutes les méthodes possibles et imaginables avec des UpdatePanel et Timer je n'ai pas réussis a faire fonctionner l'ensemble :(
 
Je vais réessayer demain en reprenant ta méthode, en tout cas j'ai réussis a faire fonctionner avec les webservices mais j'avoue c'est quand même un gros bourdel juste pour ca :p
 
Je vous tiens au courant demain :)
 
Merci ;)


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043203
massanu
Posté le 20-12-2010 à 00:23:59  profilanswer
 


 
 
J'ai revérifié par curiosité après ton message, même ce code ne fonctionne pas.
Avec la méthode de TotallRecall en plus :(
 
 

Code :
  1. protected void btnQuery_Click(object sender, EventArgs e)
  2.         {
  3.             //create a new Connection object using the connection string
  4.             SqlConnection objConnect = new SqlConnection("ma chaine de connection" );
  5.             objConnect.FireInfoMessageEventOnUserErrors = true;
  6.             objConnect.InfoMessage += new SqlInfoMessageEventHandler(conn_InfoMessage);
  7.             ArrayList alParameters = new ArrayList();
  8.             //create a new Command using the CommandText and Connection object
  9.             SqlCommand objCommand = new SqlCommand("TestQueryMessage", objConnect);
  10.             objCommand.CommandType = CommandType.StoredProcedure;
  11.             try
  12.             {
  13.                 objConnect.Open();
  14.                 objCommand.ExecuteReader();
  15.             }
  16.             catch (Exception objError)
  17.             {
  18.                 throw;
  19.             }
  20.             finally
  21.             {
  22.                 objCommand.Parameters.Clear();
  23.                 objConnect.Close();
  24.             }
  25.         }
  26.         void conn_InfoMessage(object sender, SqlInfoMessageEventArgs e)
  27.         {
  28.             Session["status"] += e.Message + "-" + e.Errors[0].State;           
  29.         }
  30.         protected void Timer1_Tick(object sender, EventArgs e)
  31.         {
  32.             if (Session["status"] !=null)
  33.             lblQuery1.Text += Session["status"].ToString();
  34.         }


 
 

Code :
  1. <asp:ScriptManager ID="ScriptManager1" runat="server">
  2.         </asp:ScriptManager>
  3.         <asp:UpdatePanel ID="UpdatePanel1" runat="server"  >
  4.             <ContentTemplate>
  5.                 <asp:Button ID="btnQuery" runat="server" Text="Query" OnClick="btnQuery_Click" />
  6.                 <asp:Label ID="lblQuery1" runat="server"></asp:Label>
  7.                 <asp:Timer runat="server" id="Timer1" Interval="1000" OnTick="Timer1_Tick"></asp:Timer>               
  8.             </ContentTemplate>
  9.         </asp:UpdatePanel>


 
 
 
Mais le truc le plus étonnant, c'est que si dans la méthode Timer1_Tick je ne met que lblQuery1.Text = DateTime.Now.ToLongTimeString(), et bien y'a un rafraichissement et la date change toute les secondes.
 
:??:
 
Le résultat de ce code, est que tout les messages remontés par SQL SERVER s'affiche d'un coup tout à la fin


Message édité par massanu le 20-12-2010 à 10:10:54

---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043290
massanu
Posté le 20-12-2010 à 14:44:50  profilanswer
 

J'ai tout essayé, rien a faire, je n'arrive pas à afficher progressivement les retours de la PS RaiseError
 
Je les récupères bien tous, au bon moment, mais je ne parviens pas à les afficher progressivement :/


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043300
massanu
Posté le 20-12-2010 à 15:20:10  profilanswer
 


 
 
J'ai essayé  plusieurs valeurs d'interval mais rien à faire :/
 
D'après ce que je comprend c'est que le Timer se bloque, une fois que la requête SQL se lance
Donc les updates ne se font plus. Une fois que la requête est terminée, les updates recommence, mais la bien évidemment tout les messages sont deja remontés.
 
Il faudrait réussir a caler le timer et la requête dans un thread différent, et qu'ils se partagent une variable contenant les messages remontés, je pense.


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043301
massanu
Posté le 20-12-2010 à 15:28:45  profilanswer
 

massanu a écrit :


 
 
J'ai essayé  plusieurs valeurs d'interval mais rien à faire :/
 
D'après ce que je comprend c'est que le Timer se bloque, une fois que la requête SQL se lance
Donc les updates ne se font plus. Une fois que la requête est terminée, les updates recommence, mais la bien évidemment tout les messages sont deja remontés.
 
Il faudrait réussir a caler le timer et la requête dans un thread différent, et qu'ils se partagent une variable contenant les messages remontés, je pense.


 
 
J'ai peut être une piste intéressante la.
 
En utilisant les PageMethods appelées par le code client.
- J'apelle une PageMethod, qui lance la requête dans un Thread à part, et qui stocke les messages dans le Cache.
- Puis en utilisant un timer javascript  _timerId = setInterval(updateStatus, 2000), a fonction updateStatus appelle une seconde PageMethod qui lui renvoie le contenu du Cache en question
 
Et ca a l'air de fonctionner
 
Qu'est ce que vous en pensé ? :??:


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043377
TotalRecal​l
Posté le 20-12-2010 à 21:32:09  profilanswer
 

massanu a écrit :


D'après ce que je comprend c'est que le Timer se bloque, une fois que la requête SQL se lance
Donc les updates ne se font plus. Une fois que la requête est terminée, les updates recommence, mais la bien évidemment tout les messages sont deja remontés.


Je suspectais un truc de ce genre là, c'est pour ça que je parlais de faire le test en conservant bien les trois messages (plutôt qu'écraser le label) d'une façon complètement indépendante de l'affichage, en y ajoutant la date.
A mon avis vu ce que tu as précisé après ça confirme que c'est bien compris le souci.

 
massanu a écrit :

 

En utilisant les PageMethods appelées par le code client.
- J'apelle une PageMethod, qui lance la requête dans un Thread à part, et qui stocke les messages dans le Cache.
- Puis en utilisant un timer javascript  _timerId = setInterval(updateStatus, 2000), a fonction updateStatus appelle une seconde PageMethod qui lui renvoie le contenu du Cache en question

 

Concernant ta solution, c'est déjà plus simple qu'un webservice. Je ne comprend pas pourquoi tu passes par HttpContext.Cache plutôt que Session (à moins qu'avec ta méthode tu te retrouves avec deux sessions différentes ?) et je vois un *énorme* inconvénient à ça : Cache est partagé entre tous les utilisateurs du site, tout comme Application ou une variable static (c'est moi qui parlait un peu plus haut de variable static, mais uniquement pour t'aider à diagnostiquer ton problème et tester la récupération des messages sur ton poste de dév !!)

Message cité 1 fois
Message édité par TotalRecall le 20-12-2010 à 21:35:20

---------------
Topic .Net - C# @ Prog
n°2043387
massanu
Posté le 20-12-2010 à 21:52:10  profilanswer
 

TotalRecall a écrit :


Je suspectais un truc de ce genre là, c'est pour ça que je parlais de faire le test en conservant bien les trois messages (plutôt qu'écraser le label) d'une façon complètement indépendante de l'affichage, en y ajoutant la date.  
A mon avis vu ce que tu as précisé après ça confirme que c'est bien compris le souci.
 


 

TotalRecall a écrit :


 
Concernant ta solution, c'est déjà plus simple qu'un webservice. Je ne comprend pas pourquoi tu passes par HttpContext.Cache plutôt que Session (à moins qu'avec ta méthode tu te retrouves avec deux sessions différentes ?) et je vois un *énorme* inconvénient à ça : Cache est partagé entre tous les utilisateurs du site, tout comme Application ou une variable static (c'est moi qui parlait un peu plus haut de variable static, mais uniquement pour t'aider à diagnostiquer ton problème et tester la récupération des messages sur ton poste de dév !!)


 
 
Pour la première partie :
 
- Je récupère bien la bonne date, et les bons intervalles de temps quand je stocke juste dans une List. C'est bien l'affichage qui pose problème
 
Pour la seconde partie :
 
- La seconde solution est quasiment identiques sauf qu'au lieu de faire un webservices a part, je declare les fonctions static en webmethod. Par contre je ne pense pas qu'on peut avoir accès aux Session dans une WebMethod static :??:
- Pour le cache oui c'est partagé, mais je génère un GUID "key" au lancement de la tache, et je stocke les messages dans Cache["key"], je fais passer cette clé afin de stocker et récuperer les bons messages.
 
C'est quand même très lourd pour ce que je souhaite :(


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2043393
TotalRecal​l
Posté le 20-12-2010 à 22:06:51  profilanswer
 

Bof, c'est de l'informatique, c'est tjs à coup de bricolage qu'on arrive à ses fins. Je suis moins choqué par ça que le webservice...
Pense juste à fixer un timeout sur le truc que tu mets dans cache, histoire que ça n'y traine pas une semaine.


Message édité par TotalRecall le 20-12-2010 à 22:07:38

---------------
Topic .Net - C# @ Prog
n°2046326
alien cons​piracy
hardtrance addict
Posté le 05-01-2011 à 00:35:49  profilanswer
 

Quelqu'un a déjà essayé EF Code-First  et/ou connais un petit peu le framework ?  
 
Ca m'a l'air très intéressant pour rapidement développer des applications liés à une base de données.
 
http://weblogs.asp.net/scottgu/arc [...] lease.aspx

n°2046473
ov3rflow
How Do You Do, Fellow Kids?
Posté le 05-01-2011 à 15:31:21  profilanswer
 

:hello:  
 
Ça fait longtemps que j'ai pas fait de BDD, la j'ai une page de rien du tout en ASP.NET qui doit afficher une ou deux tables.
 
Je suis mieux d'attaquer direct par Linq To Entity ? ou bien un passage par Linq to SQL est conseillé avant d'aborder Entity fw ?  

n°2047032
TotalRecal​l
Posté le 06-01-2011 à 21:31:41  profilanswer
 

ov3rflow a écrit :

:hello:  
 
Ça fait longtemps que j'ai pas fait de BDD, la j'ai une page de rien du tout en ASP.NET qui doit afficher une ou deux tables.
 
Je suis mieux d'attaquer direct par Linq To Entity ? ou bien un passage par Linq to SQL est conseillé avant d'aborder Entity fw ?  


En framework 4 EF n'a que des avantages. En 3.5 par contre reste sous Linq2SQL, le designer de l'EF est vraiment trop buggé, synchroniser le schéma à partir d'une base même en SQL Server tient de la gageure.


---------------
Topic .Net - C# @ Prog
n°2048284
tomlev
Posté le 11-01-2011 à 22:20:26  profilanswer
 

TotalRecall a écrit :

Petit message express pour signaler une MAJ de la section outils/plugins du premier post.  
Au passage, pour ceux qui comme moi utilisent Resharper/Refactor!/Visual AssistX n'hésitez pas à partager vos avis et astuces :).
 
Si j'ai le courage ce week end je regarderai un peu les dernières questions...
Bonne soirée à tous !


 
Pour info, j'ai publié lundi une nouvelle version de Dvp.NET, si vous voulez jeter un oeil aux nouveautés ;)

n°2048718
ov3rflow
How Do You Do, Fellow Kids?
Posté le 13-01-2011 à 15:17:31  profilanswer
 

TotalRecall a écrit :


En framework 4 EF n'a que des avantages. En 3.5 par contre reste sous Linq2SQL, le designer de l'EF est vraiment trop buggé, synchroniser le schéma à partir d'une base même en SQL Server tient de la gageure.


 
Ha, merci de l'info :jap:

n°2048839
TotalRecal​l
Posté le 13-01-2011 à 22:20:12  profilanswer
 

ov3rflow a écrit :


 
Ha, merci de l'info :jap:


 
C'est une expérience concrète sur un gros projet, on a ramé une dizaine de jours avant de faire machine arrière et utiliser Linq to SQL.  
En gros à la moindre modif de schéma en BdD on devait supprimer et recréer le .edmx entièrement tellement la synchro était merdeuse. Ca le faisait sur tous les postes, et j'ai pourtant mis à jour tout ce qui pouvait l'être. Outre les bugs de synchro on avait aussi quelques trucs marrants (genre en gros on ne pouvait ouvrir qu'une seule fois le .edmx, après tant qu'on n'avait pas déchargé et rechargé le projet il ne se passait rien quand on cliquait sur le fichier).
On était pluggé sur du SQL Server 2005, ça a peut être joué (on n'a pas tenté le 2008) mais quand j'en ai eu marre j'ai proposé de nous appuyer sur Linq 2 Sql et clairement même si on a perdu les quelques fonctionnalités (pas exploitées par nous de toute façon) de l'EF, on y a gagné sur tous les plans. Pourtant à la base c'est moi qui avait proposé l'Entity Framework (sans quoi on partait sur du NHibernate).
 
Sur Internet j'ai trouvé mention de pas mal de gens qui ont essuyés les mêmes problèmes mais à notre stade c'était carrément inutilisable, alors que l'EF a bien été accueilli à sa sortie (alors que ce dont je parle est très récent), donc on est peut être passé à côté de qqch. Si quelqu'un a un avis contraire ou a été confronté aux mêmes problèmes tout en les ayant résolus je suis preneur de son retour d'expérience ! :)


---------------
Topic .Net - C# @ Prog
n°2048840
TotalRecal​l
Posté le 13-01-2011 à 22:23:43  profilanswer
 

tomlev a écrit :


 
Pour info, j'ai publié lundi une nouvelle version de Dvp.NET, si vous voulez jeter un oeil aux nouveautés ;)


Ca a l'air vraiment sympa, encore pas mal de bons trucs sur les chaînes et les enumerable. J'aime bien le Split ! Dès que j'en trouve l'occasion j'essaierai un peu ça :)
Merci et bravo !


---------------
Topic .Net - C# @ Prog
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  9  10  11  ..  77  78  79  80  81  82

Aller à :
Ajouter une réponse
 

Sujets relatifs
service web REST en VB.NET HeySpreadRequete Access avec paramètres, éxécutée en VB .Net
impersonalisation sous ASP.NET[Topic Unique] les blagues pourries de harko et florentg
Generation d'un GIF en ASP.NETAppeler un service web .NET sécurisé en Java
Prog Visual Basic "periodicité"[Oracle] Temps d'execution de requete tres long par rapport au .NET
[VB.NET] Lister des imprimantes réseauxFusion de résultats de requêtes dans une unique Table
Plus de sujets relatifs à : [Topic unique] .Net @ Prog


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)