<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - Développement Web avec .NET</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Forum d'entraide sur les technologies Web de Microsoft (ASP.NET, MVC, Ajax, Silverlight, Services web, Azure, Sharepoint, etc.).]]></description>
		<language>fr</language>
		<lastBuildDate>Wed, 21 Oct 2026 11:50:06 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - Développement Web avec .NET</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title><![CDATA[[Débutant] Résultats d&#8217;examens par web]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182846&amp;goto=newpost</link>
			<pubDate>Tue, 24 Mar 2026 17:51:02 GMT</pubDate>
			<description>Bonsoir, 
J’aimerais débuter...</description>
			<content:encoded><![CDATA[<div>Bonsoir,<br />
J’aimerais débuter dans un projet qui me tient à cœur, je ne sais pas par quoi commencer.<br />
<br />
J’ai une base de données sous access que me permet de gérer les notes des devoir et examen pour afficher les résultats des étudiants.<br />
<br />
J’aimerais réaliser une page web (mieux que de réaliser une app android ou iPhone), pour que chaque étudiants peuvent afficher les résultats de leurs examens grâce à 3 champs qui doivent être vérifiés :<br />
- numéro de leurs carte Etudiant « Matricule »<br />
- numéro Id que je leurs fournis « Id_Etudiant »<br />
- mot de passe « MP_Etudiant »<br />
<br />
J’aimerais juste savoir par quoi je dois commencer ?<br />
Merci</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1428/dotnet/developpement-web-net/">Développement Web avec .NET</category>
			<dc:creator>m_charmat</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182846/dotnet/developpement-web-net/resultats-d-examens-web/</guid>
		</item>
		<item>
			<title>Utilisation de deux DBcontexts dans un même projet</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2180722&amp;goto=newpost</link>
			<pubDate>Mon, 01 Dec 2025 11:45:02 GMT</pubDate>
			<description>Bonjour chers tous, 
Je suis...</description>
			<content:encoded><![CDATA[<div>Bonjour chers tous,<br />
Je suis débutant avec ASP.NET, je travaille sur un projet qui nécessite l'utilisation de procédures stockées qui se trouvent dans une Base de Données sur un autre serveur.<br />
Après plusieurs recherche sur le NET, j'ai créé deux contexts et la connexion à la seconde base de donnée et un model de la table de la seconde base de donnée.<br />
Mais à l'execution, j'ai l'erreur suivante : <b><u>Nom d'objet 'dbo.MaTable' non valide.</u></b> (<i>MaTable est le nom de la table source de la procédure stockée</i>).<br />
<br />
<b>Connexions</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br /></div></td><td valign="top"><pre style="margin: 0"><span class="br0">&#123;</span>
  <span style="color: #FF0000;">&quot;Logging&quot;</span>: <span class="br0">&#123;</span>
    <span style="color: #FF0000;">&quot;LogLevel&quot;</span>: <span class="br0">&#123;</span>
      <span style="color: #FF0000;">&quot;Default&quot;</span>: <span style="color: #FF0000;">&quot;Information&quot;</span>,
      <span style="color: #FF0000;">&quot;Microsoft.AspNetCore&quot;</span>: <span style="color: #FF0000;">&quot;Warning&quot;</span>
    <span class="br0">&#125;</span>
  <span class="br0">&#125;</span>,
  <span style="color: #FF0000;">&quot;AllowedHosts&quot;</span>: <span style="color: #FF0000;">&quot;*&quot;</span>,
  <span style="color: #FF0000;">&quot;ConnectionStrings&quot;</span>: <span class="br0">&#123;</span>
    <span style="color: #FF0000;">&quot;ConnectionString_1&quot;</span>: <span style="color: #FF0000;">&quot;Server=ServeurLocal;Database=BaseLocale;Trusted_Connection=True;MultipleActiveResultSets=true;TrustServerCertificate=True&quot;</span>,
    <span style="color: #FF0000;">&quot;ConnectionString_2&quot;</span>: <span style="color: #FF0000;">&quot;Server=ServeurDistant;Database=BaserDistante;Trusted_Connection=True;MultipleActiveResultSets=true;TrustServerCertificate=True&quot;</span>
  <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><b>Context 1</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">partial</span> <span style="color: #0000ff;">class</span> Context1 : DbContext
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">public</span> Context1 <span class="br0">&#40;</span>DbContextOptions&lt;Context1&gt; options<span class="br0">&#41;</span>
        : <span style="color: #0000ff;">base</span><span class="br0">&#40;</span>options<span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
    <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">virtual</span> DbSet&lt;model1&gt; models1<span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    ....</pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">partial</span> <span style="color: #0000ff;">class</span> Context2 : DbContext
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">public</span> Context2  <span class="br0">&#40;</span>DbContextOptions&lt;Context2&gt; options<span class="br0">&#41;</span>
        : <span style="color: #0000ff;">base</span><span class="br0">&#40;</span>options<span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
    <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">virtual</span> DbSet&lt;model2&gt; models2<span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    ....</pre></td></tr></table></code><hr />
</div><br />
<b>Injection des connexionx</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">var</span> ConnectionString1= builder.Configuration.GetConnectionString<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;ConnectionString_1&quot;</span><span class="br0">&#41;</span> ?? <span style="color: #0000ff;">throw</span> <span style="color: #0000ff;">new</span> InvalidOperationException<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;La connexion au serveru n'a pas &eacute;t&eacute; &eacute;tablie.&quot;</span><span class="br0">&#41;</span>;
builder.Services.AddDbContext&lt;Context1&gt;<span class="br0">&#40;</span>options =&gt;
    options.UseSqlServer<span class="br0">&#40;</span>ConnectionString_1<span class="br0">&#41;</span><span class="br0">&#41;</span>;
&nbsp;
<span style="color: #0000ff;">var</span> ConnectionString2= builder.Configuration.GetConnectionString<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;ConnectionString_2&quot;</span><span class="br0">&#41;</span> ?? <span style="color: #0000ff;">throw</span> <span style="color: #0000ff;">new</span> InvalidOperationException<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;La connexion au serveru de trading n'a pas &eacute;t&eacute; &eacute;tablie.&quot;</span><span class="br0">&#41;</span>;
builder.Services.AddDbContext&lt;Context2&gt;<span class="br0">&#40;</span>options =&gt;
    options.UseSqlServer<span class="br0">&#40;</span>ConnectionString_2<span class="br0">&#41;</span><span class="br0">&#41;</span>;</pre></td></tr></table></code><hr />
</div><b>Controller</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td valign="top"><pre style="margin: 0">  <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">async</span> Task&lt;ActionResult&gt; Index<span class="br0">&#40;</span><span class="br0">&#41;</span>
  <span class="br0">&#123;</span>
       <span style="color: #0000ff;">var</span> liste= <span style="color: #0000ff;">await</span> _context2.model2.FromSqlRaw<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;EXEC procedure&quot;</span><span class="br0">&#41;</span>.ToListAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
      <span style="color: #0000ff;">return</span> View<span class="br0">&#40;</span><span class="br0">&#41;</span>;
  <span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1428/dotnet/developpement-web-net/">Développement Web avec .NET</category>
			<dc:creator>karamaster</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2180722/dotnet/developpement-web-net/utilisation-dbcontexts-meme-projet/</guid>
		</item>
		<item>
			<title>Page de modification avec champ liste (select)</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2180275&amp;goto=newpost</link>
			<pubDate>Tue, 04 Nov 2025 10:39:45 GMT</pubDate>
			<description>Bonjour, 
Ma page de...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Ma page de modification contient des champ select qui affiche les libellés et option garde les ID.<br />
Je vourais, sur ma page razor, sélectionner la donnée à modifier et le reste de la liste. J'ai une exception sur la page cshtml :<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p671517d1762272993/dotnet/developpement-web-net/page-modification-champ-liste-select/exception.png/" border="0" alt="Nom : exception.png
Affichages : 167
Taille : 51,3 Ko"  style="float: CONFIG" /><br />
<br />
<b>Controller</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">async</span> Task&lt;ActionResult&gt; Edit<span class="br0">&#40;</span><span style="color: #0000ff;">int</span>? id<span class="br0">&#41;</span>
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>id == <span style="color: #0000ff;">null</span><span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
        <span style="color: #0000ff;">return</span> NotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
    <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">var</span> SearchOperation = <span style="color: #0000ff;">await</span> _context.Operations.FromSqlRaw<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;EXEC dbo.affiche_operations&quot;</span><span class="br0">&#41;</span>.ToListAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>;
    <span style="color: #0000ff;">var</span> listOperations = SearchOperation.FirstOrDefault<span class="br0">&#40;</span>x =&gt; x.numero_operation == id<span class="br0">&#41;</span>;
&nbsp;
    <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>listOperations == <span style="color: #0000ff;">null</span><span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
        <span style="color: #0000ff;">return</span> NotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
    <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">var</span> listeNatureOperation = <span style="color: #0000ff;">await</span> _context.NatureOperations.ToListAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>;
    ViewBag.lib_nature= <span style="color: #0000ff;">new</span> SelectList<span class="br0">&#40;</span>listeNatureOperation, <span style="color: #FF0000;">&quot;CodeNature&quot;</span>, <span style="color: #FF0000;">&quot;LibNature&quot;</span>, selectedValue: listOperations.lib_nature<span class="br0">&#41;</span>;
&nbsp;
    <span style="color: #0000ff;">var</span> listEmetteur = <span style="color: #0000ff;">await</span> _context.Emetteurs.ToListAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>;
    ViewBag.Emetteur = <span style="color: #0000ff;">new</span> SelectList<span class="br0">&#40;</span>listEmetteur, <span style="color: #FF0000;">&quot;CodeEmetteur&quot;</span>, <span style="color: #FF0000;">&quot;raison_sociale&quot;</span>, selectedValue: listOperations.CodeEmetteur<span class="br0">&#41;</span>;
&nbsp;
      <span style="color: #0000ff;">return</span> View<span class="br0">&#40;</span>listOperations<span class="br0">&#41;</span>;
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><b>Page cshtml</b><br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td valign="top"><pre style="margin: 0">&lt;form asp-action=<span style="color: #FF0000;">&quot;Edit&quot;</span>&gt;
    &lt;div asp-validation-summary=<span style="color: #FF0000;">&quot;ModelOnly&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;text-danger&quot;</span>&gt;&lt;/div&gt;
    &lt;input type=<span style="color: #FF0000;">&quot;hidden&quot;</span> asp-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;numero_operation&quot;</span> /&gt;
    &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;form-group&quot;</span>&gt;
        &lt;label asp-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;CodeEmetteur&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;control-label&quot;</span>&gt;&lt;/label&gt;
        &lt;<span style="color: #0000ff;">select</span> asp-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;CodeEmetteur&quot;</span> asp-items=<span style="color: #FF0000;">&quot;@ViewBag.Emetteur&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;form-control&quot;</span>&gt;
            &lt;option <span style="color: #0000ff;">value</span>=<span style="color: #FF0000;">&quot;&quot;</span>&gt;-- Selectionner &eacute;metteur --&lt;/option&gt;
        &lt;/<span style="color: #0000ff;">select</span>&gt;
        &lt;span asp-validation-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;CodeEmetteur&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;text-danger&quot;</span>&gt;&lt;/span&gt;
    &lt;/div&gt;
    &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;form-group&quot;</span>&gt;
        &lt;label asp-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;lib_nature&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;control-label&quot;</span>&gt;&lt;/label&gt;
        &lt;<span style="color: #0000ff;">select</span> asp-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;lib_nature&quot;</span> asp-items=<span style="color: #FF0000;">&quot;@ViewBag.lib_nature&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;form-control&quot;</span>&gt;
            &lt;option <span style="color: #0000ff;">value</span>=<span style="color: #FF0000;">&quot;&quot;</span>&gt;-- Selectionner le type --&lt;/option&gt;
        &lt;/<span style="color: #0000ff;">select</span>&gt;
        &lt;span asp-validation-<span style="color: #0000ff;">for</span>=<span style="color: #FF0000;">&quot;lib_nature&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;text-danger&quot;</span>&gt;&lt;/span&gt;
    &lt;/div&gt;
&lt;/form&gt;</pre></td></tr></table></code><hr />
</div></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p671517d1762272993/dotnet/developpement-web-net/page-modification-champ-liste-select/exception.png/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1428/dotnet/developpement-web-net/">Développement Web avec .NET</category>
			<dc:creator>karamaster</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2180275/dotnet/developpement-web-net/page-modification-champ-liste-select/</guid>
		</item>
		<item>
			<title>Problème de compatibilité de type entre le controller et la vue</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2180165&amp;goto=newpost</link>
			<pubDate>Wed, 29 Oct 2025 10:40:54 GMT</pubDate>
			<description>Bonjour, 
Je travaille sur un...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Je travaille sur un projet ASP.NET en MVC. J'ai une table Opération qui a deux clés étrangères de deux autres tables. <br />
Je voudrais afficher la liste des opérations avec pagination et afficher en lieu et place des clés étrangère le libellé.<br />
Seulement, j'ai une erreur :<br />
<b><i>nvalidOperationException: The model item passed into the ViewDataDictionary is of type 'BOCNEW_2025.Controllers.BOC_NEW.Pagination`1[BOCNEW_2025.Models.Operation]', but this ViewDataDictionary instance requires a model item of type 'System.Collections.Generic.IEnumerable`1[BOCNEW_2025.Models.Operation]'.</i></b>.<br />
Je comprends qu'il s'agit d'un problème de compatibilité entre les données attendues par la vue et celles envoyées par le controller mais je n'arrive pas à résoudre le problème depuis hier.<br />
<br />
<b>Model Opération</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">partial</span> <span style="color: #0000ff;">class</span> Operation
<span class="br0">&#123;</span>
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Code &eacute;metteur&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span class="br0">&#91;</span>Required<span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> CodeEmetteur <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Num&eacute;ro op&eacute;ration&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> NumeroOperation <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Code nature op&eacute;ration&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span class="br0">&#91;</span>Required<span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> CodeNature <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Observation&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Observations <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Date d'enregistrement&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> DateTime? DateEnregistrement <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Date de diffusion&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> DateTime? DateDebutDiffusion <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Date de fin de diffusion&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> DateTime? DateFinDiffusion <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>Display<span class="br0">&#40;</span>Name = <span style="color: #FF0000;">&quot;Document joint&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Document <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>NotMapped<span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> IEnumerable&lt;SelectListItem&gt; NatureOperation <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span class="br0">&#91;</span>NotMapped<span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> IEnumerable&lt;SelectListItem&gt; Emetteur <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><b>Model Pagination</b><br />
Pour la pagination, j'ai créé une classe générique qui prend en paramètres la source (model) sous la forme de List&lt;T&gt; et le nombre de page, la page active, etc<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> PaginationViewModel&lt;T&gt; : List&lt;T&gt;
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> TotalItems <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> PageActive <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> NbreParPage <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> TotalPage <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> DebutPage <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> FinPage <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">public</span> PaginationViewModel<span class="br0">&#40;</span>List&lt;T&gt; items, <span style="color: #0000ff;">int</span> count, <span style="color: #0000ff;">int</span> pageIndex, <span style="color: #0000ff;">int</span> pageSize<span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
        TotalItems = count;
        PageActive = pageIndex;
        NbreParPage = pageSize;
        TotalPage = <span class="br0">&#40;</span><span style="color: #0000ff;">int</span><span class="br0">&#41;</span>Math.Ceiling<span class="br0">&#40;</span>count / <span class="br0">&#40;</span><span style="color: #0000ff;">double</span><span class="br0">&#41;</span>NbreParPage<span class="br0">&#41;</span>;
        DebutPage = pageIndex - <span style="color: #cc66cc;">5</span>;
        FinPage = pageIndex + <span style="color: #cc66cc;">4</span>;
&nbsp;
        <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>DebutPage &lt;= <span style="color: #cc66cc;">0</span><span class="br0">&#41;</span>
        <span class="br0">&#123;</span>
            FinPage = FinPage - <span class="br0">&#40;</span>DebutPage - <span style="color: #cc66cc;">1</span><span class="br0">&#41;</span>;
            DebutPage = <span style="color: #cc66cc;">1</span>;
        <span class="br0">&#125;</span>
        <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>FinPage &gt; TotalPage<span class="br0">&#41;</span>
        <span class="br0">&#123;</span>
            FinPage = TotalPage;
            <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>FinPage &gt; <span style="color: #cc66cc;">10</span><span class="br0">&#41;</span>
            <span class="br0">&#123;</span>
                DebutPage = FinPage - <span style="color: #cc66cc;">9</span>;
            <span class="br0">&#125;</span>
        <span class="br0">&#125;</span>
        <span style="color: #0000ff;">this</span>.AddRange<span class="br0">&#40;</span>items<span class="br0">&#41;</span>;
    <span class="br0">&#125;</span>
&nbsp;
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">bool</span> PrecDesactive =&gt; PageActive &gt; <span style="color: #cc66cc;">1</span>;
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">bool</span> SuivDesactive =&gt; PageActive &lt; TotalPage;
&nbsp;
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> PaginationViewModel&lt;T&gt; Create<span class="br0">&#40;</span>List&lt;T&gt; source, <span style="color: #0000ff;">int</span> pageIndex, <span style="color: #0000ff;">int</span> pageSize<span class="br0">&#41;</span> 
    <span class="br0">&#123;</span>
        <span style="color: #0000ff;">var</span> count = source.Count;
        <span style="color: #0000ff;">var</span> items = source.Skip<span class="br0">&#40;</span><span class="br0">&#40;</span>pageIndex - <span style="color: #cc66cc;">1</span><span class="br0">&#41;</span> * pageSize<span class="br0">&#41;</span>.Take<span class="br0">&#40;</span>pageSize<span class="br0">&#41;</span>.ToList<span class="br0">&#40;</span><span class="br0">&#41;</span>;
        <span style="color: #0000ff;">return</span> <span style="color: #0000ff;">new</span> PaginationViewModel&lt;T&gt;<span class="br0">&#40;</span>items, count, pageIndex, pageSize<span class="br0">&#41;</span>;
    <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><b>Le Controller</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">public</span> ActionResult Index<span class="br0">&#40;</span><span style="color: #0000ff;">int</span> NumPage<span class="br0">&#41;</span>
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">int</span> NbreParPage = <span style="color: #cc66cc;">10</span>;
    <span style="color: #808080;">//On r&eacute;initialise le num&eacute;ro de page &agrave; 1 si le num&eacute;ro est &eacute;gal ou inf&eacute;rieru &agrave; 1</span>
    <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>NumPage &lt; <span style="color: #cc66cc;">1</span><span class="br0">&#41;</span>
        NumPage = <span style="color: #cc66cc;">1</span>;
&nbsp;
    <span style="color: #0000ff;">var</span> operations = _context.Operations
        .Include<span class="br0">&#40;</span>o =&gt; o.NatureOperation<span class="br0">&#41;</span>
        .Include<span class="br0">&#40;</span>o =&gt; o.Emetteur<span class="br0">&#41;</span>
        .ToList<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
    <span style="color: #0000ff;">return</span> View<span class="br0">&#40;</span>PaginationViewModel&lt;Operation&gt;.Create<span class="br0">&#40;</span>operations, NumPage, NbreParPage<span class="br0">&#41;</span><span class="br0">&#41;</span>;
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><b>La page cshtml</b><br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
@model BOCNEW_2025.Models.PaginationViewModel&lt;BOCNEW_2025.Models.Operation&gt;
@foreach <span class="br0">&#40;</span><span style="color: #0000ff;">var</span> item <span style="color: #0000ff;">in</span> Model<span class="br0">&#41;</span> <span class="br0">&#123;</span>
&lt;tr&gt;
    &lt;td <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-1&quot;</span> style=<span style="color: #FF0000;">&quot;width:5%; text-align:right;&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modeltem =&gt; item.CodeEmetteur<span class="br0">&#41;</span>
    &lt;/td&gt;
    &lt;td <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-1&quot;</span> style=<span style="color: #FF0000;">&quot;width:5%; text-align:right;&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modelItem =&gt; item.Emetteur<span class="br0">&#41;</span>
    &lt;/td&gt;
     &lt;td <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-3&quot;</span> style=<span style="color: #FF0000;">&quot;width:3%; text-align:right;&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modelItem =&gt; item.CodeNature<span class="br0">&#41;</span>
    &lt;/td&gt;
        &lt;td <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-4&quot;</span> style=<span style="color: #FF0000;">&quot;width:15%&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modelItem =&gt; item.DateDebutDiffusion<span class="br0">&#41;</span>
    &lt;/td&gt;
        &lt;td style=<span style="color: #FF0000;">&quot;width:15%&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modelItem =&gt; item.DateFinDiffusion<span class="br0">&#41;</span>
    &lt;/td&gt;
        &lt;td style=<span style="color: #FF0000;">&quot;width:30%&quot;</span>&gt;
            @Html.DisplayFor<span class="br0">&#40;</span>modelItem =&gt; item.Observations<span class="br0">&#41;</span>
        &lt;/td&gt;
        &lt;td style=<span style="color: #FF0000;">&quot;width:15%&quot;</span>&gt;
        &lt;button type=<span style="color: #FF0000;">&quot;button&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;btn btn-primary&quot;</span>&gt;&lt;a asp-action=<span style="color: #FF0000;">&quot;Edit&quot;</span> asp-route-id=<span style="color: #FF0000;">&quot;@item.NatureOperation&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;text-white&quot;</span>&gt;Modifier&lt;/a&gt;&lt;/button&gt;
        &lt;button type=<span style="color: #FF0000;">&quot;button&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;btn btn-danger&quot;</span>&gt;&lt;a asp-action=<span style="color: #FF0000;">&quot;Delete&quot;</span> asp-route-id=<span style="color: #FF0000;">&quot;@item.NatureOperation&quot;</span> <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;text-white&quot;</span>&gt;Supprimer&lt;/a&gt;&lt;/button&gt;
    &lt;/td&gt;
&lt;/tr&gt;
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1428/dotnet/developpement-web-net/">Développement Web avec .NET</category>
			<dc:creator>karamaster</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2180165/dotnet/developpement-web-net/probleme-compatibilite-type-entre-controller-vue/</guid>
		</item>
	</channel>
</rss>
