- Amazfit T-Rex 3 Pro – világítós dínó
- Nemzetközi vizekre evezett a Realme GT 7 és GT 7T
- iPhone topik
- Poco M8 Pro 5G gyorsteszt
- Honor Magic6 Pro - kör közepén számok
- Azonnali mobilos kérdések órája
- Apró változásokkal, elődjénél jobb áron kezd a Google Pixel 10a
- Mobil flották
- Google Pixel topik
- Megtartotta Európában a 7500 mAh-t az Oppo
Új hozzászólás Aktív témák
-
ubid
senior tag
Sziasztok!
Ismét egy kis segítséget szeretnék kérni = ) Kicsit bonyolultabb elmagyarázni, de remélem megértitek mi a problémám, és tudtok segíteni is !
Előre is köszönöm !Tehát :
Egy asp.net mvc3 webalkalmazás darabját készítem jelenleg. A feladat : Események létrehozása, majd miután létrehoztuk az eseményeket visszadob egy lapra, ahol az események listája látszik. minden eseményhez van egy link, ami tulajdonképpen a details- lapja, viszont ott alatta lehet kommentelni az adott eseményt. ( természetesen mindent adatbázisba mentünk le az eseményeket az események táblába, a kommenteket a komment táblába, viszont kapcsolat nem lehet közöttük, mert az alkalmazás során máshova is kell majd kommentelni )
Ezt , hogy oda varázsolja a komment felületet egy a details view-ba varázsolt RenderAction-el oldottam meg.
így : @{Html.RenderAction("CommentCreate", "Comment");}Mivel a details lapon van a kommentelő felület ( ide listázza ki, és alatta van egy form is, ahol beírható a komment és küldhető ) ezért nyilván ide is postol vissza, ezért ennek a controllerébe ( jelen esetben ez az event controller ) írtam a details-hoz egy HTTP-s actionresult-ot, aminél kezdődik a gond.
Az a problémám, hogy valamiért az event ID-jét egyből belenyomja nekem kérés nélkül a komment ID-jába, amitől nyilván több kommentet nem is vihetek fel, mert ütközés van.
( a kommentnek van egy TARGETID-ja ami nem egyedi, én ebbe szeretném, hogy megjelenjen az adott esemény ID-ja abból a célból, hogy minden esményhez csak a hozzá tartozó kommenteket listázza ki )A kód így néz ki : public ViewResult Details(int id,Comment newComment)
ebben ugye azért írtam be az ID-t mert szeretném , hogy a TARGETID-ba majd ez bekerüljön ( ez így rendben is van szerintem, mert az URL-be már úgyis benne van az esmeényünk ID-ja , ezáltal bele is tudom rakni a TARGETID-ba.
Viszont a sima ID ( aminek csak akkor kéne értéket kapnia amikor mentődik az adatbázisba, mivel ott számolódik ki (PK) )a kód további része így néz ki :
{
newComment.Added = DateTime.Now;
MembershipUser currentUser = Membership.GetUser();
Guid userId = new Guid(currentUser.ProviderUserKey.ToString());
newComment.UserID = userId;
newComment.TargetID = id;
db.Comments.AddObject(newComment);
db.SaveChanges();
return View();
}Mutatok egy képet is, hogy lássátok miről beszélek :

Tehát látható, hogy még a db save-ig el se jutott, de már ott felvette azt az ID-t ami nem is az övé lénne.
A partial-view-nak pedig így néz ki az érdemi része :
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.TargetID)
</td>
<td>
@Html.DisplayFor(modelItem => item.TargetType)
</td>
<td>
@Html.DisplayFor(modelItem => item.Text)
</td>
<td>
@Html.DisplayFor(modelItem => item.UserID)
</td>
<td>
@Html.DisplayFor(modelItem => item.Added)
</td>
<td>
@Html.ActionLink("Delete", "Delete", new { id=item.ID })
</td>
</tr>
}
</table>
@using (Html.BeginForm())
{
<textarea rows="5" cols="30" id="text" name="text"></textarea>
<input type="submit" value="Küldés" />
}Aki tud segítsen , hogy miért lehet ez.
Előre is köszönöm!
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Amazfit T-Rex 3 Pro – világítós dínó
- Téli Olimpiai játékok Milano - Cortina 2026
- Projektor topic
- Szeged és környéke adok-veszek-beszélgetek
- Eredeti játékok OFF topik
- Lakáshitel, lakásvásárlás
- Vírusirtó topic
- Kormányok / autós szimulátorok topikja
- Nemzetközi vizekre evezett a Realme GT 7 és GT 7T
- Mesterséges intelligencia topik
- További aktív témák...
- iPhone 13 mini 128GB 100%(1év Garancia)
- BESZÁMÍTÁS! Sapphire Pulse Radeon RX 7900 XTX 24GB videokártya garanciával hibátlan működéssel
- FIFA 16 Playstation 4
- Lenovo Legion Slim 5 - 16" WQXGA 165Hz - Ryzen 7 7435HS - 16GB - 1TB - RTX 4060 - Win11 -2 év gari
- Csere-Beszámítás! Playstation 5 Lemezes kiadás!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


