2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Heb je geprobeerd explicitiet een HttpGetAttribute te geven aan je bovenste action method?
Je kan als alternatief AttributeRouting gebruiken.
Je kan als alternatief AttributeRouting gebruiken.
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Inmiddels al opgelost, maar dat AttributeRouting is ook erg interessant!
Ik vermoed dat het probleem komt dat mijn Subaction bij beide functies Bedrijven_Apply true geeft (want de juiste actie) en dat het dan mis gaat. Ik heb het opgelost door een extra (optioneel) attribuut te geven aan de Subaction, post.
Dan kijkt hij of de request en POST is. Als dat zo is geeft ie enkel true aan de POST action, anders niet.
Beter de code erbij (einde van de IsValidForRequest function:
Even terug is dan de post als extra attribuut erbij gezet
Ik vermoed dat het probleem komt dat mijn Subaction bij beide functies Bedrijven_Apply true geeft (want de juiste actie) en dat het dan mis gaat. Ik heb het opgelost door een extra (optioneel) attribuut te geven aan de Subaction, post.
Dan kijkt hij of de request en POST is. Als dat zo is geeft ie enkel true aan de POST action, anders niet.
Beter de code erbij (einde van de IsValidForRequest function:
C#:
1
2
3
4
| var post = controllerContext.HttpContext.Request.HttpMethod == "POST"; // determine whether subaction matches return this.Name == subName && this.Post == post; |
Even terug is dan de post als extra attribuut erbij gezet
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Volgens mij is dat niet nodig. Zoals Sebazzz ook al zegt. Zet eens het HttpGet attribuut op je eerste Bedrijven_Apply method.
Wat er waarschijnlijk gebeurd is dat de routing als eerste de (get) bedrijven apply tegenkomt, maar omdat die niet specifiek alleen GET requests accepteert, maar ook POSTS, ziet hij die als een POST method, + je feitelijke POST method krijg je dus 2 methods met dezelfde signature, waardoor je die foutmelding krijgt.
Wat er waarschijnlijk gebeurd is dat de routing als eerste de (get) bedrijven apply tegenkomt, maar omdat die niet specifiek alleen GET requests accepteert, maar ook POSTS, ziet hij die als een POST method, + je feitelijke POST method krijg je dus 2 methods met dezelfde signature, waardoor je die foutmelding krijgt.