- Melyik tápegységet vegyem?
- A PC-ből az asztalunkra is kilép a Noctua
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Mini-ITX
- Milyen TV-t vegyek?
- RAID
- Milyen egeret válasszak?
- Fekete misztikum: DeepCool Mystique 360 vízhűtés
- Királyi menetben érkeznek a G.Skill új DDR5 memóriái
- Még a nyár előtt megérkeznek a G.Skill új Ripjaws memóriái
Hirdetés
-
Támogatja a legújabb Windows frissítést az új AIDA64
ph A 7.30-as verzióval a korábban bemutatott sötét mód is javult.
-
Indul a PlayStation Days of Play, bemutatkoztak a következő PS Plus játékok
gp Alig egy napot kell várni és elrajtol a Sony szokásos leárazása.
-
Még két színben megcsodálható az ár/érték trónra pályázó Moto
ma A G85 külsőben és specifikációban is ígéretes.
Új hozzászólás Aktív témák
-
vlevi
nagyúr
válasz martonx #8038 üzenetére
Nekem az egyik bajom az a WPF-el, hogy valami irgalmatlanocsmány módon jeleníti meg a szöveget.
Gondolom azért, mert már nem a WindowsXP-s GDI grafikus megjelenítést használja, hanem Directwrite-ot, de egy átlagos LCD monitoron szinte fáj elolvasni azokat az összevissza álló, elmosódott szövegeket.
Értem én, hogy technológiai fejlődés, mert hardveres gyorsítás, de, ha ennyivel rosszabb a végeredmény, akkor nem ér semmit az egész. -
petyus_
senior tag
válasz martonx #8118 üzenetére
Szia!
Köszi, hogy szántál rá időt, és leírtad a véleményedet .
Amikor pár hónapja elkezdtem csinálni, még egyáltalán nem ismertem az MVC-t, a leendő (most már mostani) munkahelyemen viszont az kellett, úgyhogy ezért abban írtam. Újrakezdeni nem akartam, azóta csak néha-néha hozzányúlok, 1-2 dolgot változtatok. Tehát a project nagy része még inkább a munkához szükséges dolgok gyakorlása volt, mint munkán felüli önfejlesztés.
Egyébként sok dologban egyetértek veled (felesleges Autofac, Automapper, SQL), ezeket azért használtam, hogy megtanuljam a nulláról megcsinálni, nyilván ezek nélkül is simán működne.
Az SQL-t pedig valszeg le fogom cserélni, még gondolkozom, hogy simán egy file-ba szerializáljam, vagy használjak valamilyen NoSql databázist, ez tényleg adna valami újat, ami a jövőben hasznos lehet, nyilván ehhez a projecthez nem kell túlságosan elmélyedni benne, de legalább lenne róla fogalmam.
Abban is igazad van, hogy a javascript nem túl szép, illetve elég overkill ez a pár dolog miatt behúzni a jquery-t, illetve bootstrapet, de itt főleg a backend része érdekelt a dolognak, ennek ellenére lehet átírom ezeket is, nem árt, ha jobban átlátom ezeket.
Azure-on gondolkozom majd, de egyelőre elég nehezen látom át, mire is lenne szükségem.
-
rob22
csendes tag
válasz martonx #8124 üzenetére
Szia!
Azure óta semmi értelme hoszting cégeknél hosztolni. Na jó, a dedikált hoszting cégek valamivel olcsóbbak tudnak lenni, mint az Azure.
Szerintem ez eléggé sarkított!
Nekem aspHOSTpage érdekeltségem van, de szoktam nézni más szolgáltatók (köztük az Azure) árait is.Eddig még nem sikerült eldöntenem, hogy az Azure tényleg ilyen drága, vagy csak nem tudom értelmezni a díjszabást, de nekem mindig az jön ki, hogy az Azure-ban a legolcsóbb előfizetés esetén is kb. 10x-es árkülönbség van bármelyik normális hoszting céghez képest. Ha nem a minimum kell, akkor ez az arány gyorsan romlik az Azure kárára (aránytalanul drágább).
A következő átlagos ASP.NET alkalmazáshoz szerinted mire kell előfizetni, és az kb. mennyibe kerülne?
Min. követelmények: 10GB tárhely és 1GB memória, 500MB MS SQL, folyamatos üzem (24óra/nap), az adatforgalom nem lesz jelentős de 100GB/hó azért jó lenne.És akkor még nem számoltam, hogy jó lenne egy Mail szerver is, az adatbázist időszakosan menteni kéne, amit kényelmesen le lehet tölteni, esetleg valami ütemező, MySQL és nem utolsó sorban magyar support.
Jelenleg én megfordítanám és azt mondom, hogy az Azurban nincs értelme hosztolni, kivéve, ha:
-valami egyéb előfizetésből van ajándék Azure credit
-néhány napos projekthez kell valami, és nincs időnk vagy vasunk hozzá
-a hozzá nem értő megrendelőkre rátukmálják a fejlesztők (ezzel nagyon nem értek egyet)
-már nem tudjuk mire költeni a pénztAbban egyetértek, hogy hosszú távon eltűnnek a hoszting cégek, de nem azért mert rosszabbak, hanem mert felvásárolják vagy ellehetetlenítik a nagyok, ugyanúgy, mint az üzleti étel bármely másik területén.
Üdv.
-
Goose-T
veterán
válasz martonx #8148 üzenetére
Közben kiderült, hogy valami online tesztet szeretnének kitöltetni, amin nem lehet csalni, és elküldi az eredményt is, hogy ne kelljen a kiértékelésére se erőforrást allokálni. Találtam egyet (test4geeks), ami tűrhetőnek tűnt erre a célra, aztán meglátjuk, hogy jó-e nekik. Én személy szerint utálom az ilyeneket, de ha ez kell a menedzsmentnek, akkor ez van. Szerintem sok fejlesztőt csak elriasztanak ezzel, főleg ezekben a vérzivataros időkben, amikor már rablórömiznek a cégek a programozókkal.
Rockbandám: https://fb.me/scharlotterhodes *** Gitárelektronikai műhelyem: https://www.fb.me/goosetgitar
-
Zalanius
tag
válasz martonx #8148 üzenetére
Ezt egy kicsit megfordítanám. Jómagam, az iparos, próbálgattam a core-t (1.0, 1.1, 2.0). Felsőbb nyomásra persze. Egy igazi senior meg utánaolvasás után és elpocsékolt idő nélkül is tudott volna meggyőzően érvelni, hogy emberek, ez még nem "production ready".
--= Zalán =--
-
-
kingabo
őstag
-
Zalanius
tag
válasz martonx #8157 üzenetére
Megítélés kérdése, mint ahogy a lazy vagy a transactionscope is meg az ORA provider, ami meglesz (?) az idén (nem MS a hunyó nyilván) stb. Végül is az ember összedobhat inkább egy viewt vagy írhat egy tárolt eljárást, már ha megteheti - de néha azért elgondolom, hogy talán futhatnak olyan projektek is, ahol ez nem opció, és a DBadmin a fejét vakarja a codefirst világban szocializált népektől. Szóval szép lassan sikerül majd felérni az EF6 mellé, de addig csak az újdonság élményét kaptuk és az MS becsületére legyen mondva, hogy közben (bevallottan) sok bugfixet is. Nem mindig akart az a dbcontext scaffold sem jól futni...
És még egyszer: mindezt a csákányos dev szemével, aki úgymond ráér és szeret próbálgatni, nem kötik régi lib-ek stb. Egy sokfős team, komoly határidőkkel vajon beleugorhatott volna akár az 1.1-be anno? Mert a 2.0+-ba, idén, már valószínűleg igen, de hát ez csak amolyan érzés.
[ Szerkesztve ]
--= Zalán =--
-
lorcsi
veterán
válasz martonx #8274 üzenetére
nálad mennyire jön ki?
azon is agyaltam, h leszedem az egész 2015 VS-t..és felpakolom a 17et..
van valami techniukája, h a 2015 verzió összes összetevőjét uninstalláljam?
ha a programok telepítése törlésénél kiválasztom az unninstallt a 2015 community-nél akkor leszedi az összeset? -
Micsurin
nagyúr
válasz martonx #8298 üzenetére
Ugyan az... Nem tudom mi lehet a baja.
3-4x igenezés után meg csak blank, fehér ablak lesz a bejelentkező screen.
[ Szerkesztve ]
The Separatists have no regard for innocent life. They don't care who walks away from war and who doesn't. That's why we move on them now, Commander……and Wolfpack leads the hunt.
-
togvau
senior tag
válasz martonx #8328 üzenetére
Ja, végül is, amikor egy opensource játékba C# kódoltam ilyesmi problémák nem voltak
Viszont van a kódomban egy valami, egy sima letöltés számláló amihez csak annyi kell, hogy behív a weboldalra, mintha egy böngésző címsorába beírnék valamit.
WebRequest.Create("http://valami.valahol.hu/akármi/index.php?letoltoazon=kod");
Ez tavaly működött, de most nem. De ugyan ezt a stringet böngésző címsorban ellőve, megjelenik a számláló adatbázisban.
De a c# programból nem. Nincs exception, és ráfut a sorra.
Szerk: megvan, kellett egy GetResponse() rá, különben nem csinálja a dolgot.
[ Szerkesztve ]
hitler, sztálin, micro usb
-
togvau
senior tag
válasz martonx #8347 üzenetére
webclientet se kell, de lehet. Ahogy a httpclientet is. Net Core-ban lehet nincsenek ezek a bugok? Amúgy melyik települ fel a windóz 10-el? nem a sima .net framework? Akkor a júzereknek úgy is az lesz fent... és ennek a konverziónak az a lényege, hogy ne kelljen JRE-t telepíteniük, meg mást sem. Na meg a .net programot talán nem vírusnak ismeri fel a vindóz defender...
Amúgy hihetetlen, de a HTTPclient nem kb 250. fájlnál dobja azt az exceptiont, hanem pontosan 250-nél... Teljesen mindegy hogy melyik fájl az, ha 250-et letölt, elhasal.
[ Szerkesztve ]
hitler, sztálin, micro usb
-
initio
csendes tag
válasz martonx #8368 üzenetére
Sajnos nem tudom mi okozza, de nagyon szeretném kideríteni, mert itt elakadtam és nem tudok tovább haladni ameddig ez nem megoldott. Volna valami elképzelésed?
a kód jó? szerinted mi lehet még az ok?illetve ha nincs jogosultságom, hogy adom meg a kódban hogy legyen neki?
sajnos ahogy mondtam új vagyok még a c# -ben
[ Szerkesztve ]
HSP Computer
-
-
initio
csendes tag
válasz martonx #8388 üzenetére
Szia
Ezt értem. Viszont. minden egyes BAT / EXE / VBS-t simán elindít a vb.NET
A baj annyi hogy 3 azaz 3 indításnál vacakol, " nem találom a fájlt " -al
-- Servermanager
az IIS indító parancsikonja ( vagy bármi ami rá hivatkozik bat / vbs stb..... )
az WDS management ( --II --)
tehát az elérések jók, de biztos hogy valami jogosultság miatt nem fér hozzá a fájlhoz.
a kérdésem hogy mi lehet az amit be kell tennem a kódba, hogy ezeket is lássa
a programban amit a képen láttok minden gomb hibátlanul működik!
Minden BAT / EXE / VBS működik. kévéve ha: servermanager/WDS/IIS-t akarok elindítani.
minden más program flottul megy, bat-bol vbs-ből is. hibátlanul.amiket tettem:
- a bat-ban ( duplakatt ) indul a servermanager hibátlanul.
erre a batra rá hivatkozok a vb.NET-be egy gombbal, amit megnyomva látom is hogy elindul a cmd, de így már az említett " nem találja a fájl hibát " kapom
ugyanez VBS-el, duplakattal simán indul a servermanager, de ha a gomb indítja akkor nem a vb.NET ír hibát hanem VBS hibát dob hogy melyik sorban mi a gebasz
ezért gondolom hogy a vb.NET nem kap jogot látni ezeket a fájlokat.
milyen ötlet van még? nagyon kellene SOS.
HSP Computer
-
initio
csendes tag
válasz martonx #8410 üzenetére
sajnos nem. közel sem.
ezek a fájlok a saját szerveremről frissítik a termékem összetevőit.
Nem tartom érdemesnek a teljes főverziót cserélni ha például jelenik meg egy új Themeaio, mivel a fő telepítő 3 GB, még a theme aio az 15 MB.Tudnál csinálni nekem az elmondottakra egy sample-t ha szépen megkérlek?
valahogy úgy, hogy csak a linket (update )
és a célt keljen beírni? 10 tétel kellene egy ablakban, és ahogy jobban végig gondolom, ha egymás után indulnak el, az lenne a leg esztétikusabb.segítenél ha szépen megkérlek. a forrás ott van az előző kommentembe, és a projektfájl linkje is.
HSP Computer
-
-
-
petyus_
senior tag
-
bandi0000
nagyúr
válasz martonx #8525 üzenetére
Köszönöm, SQL azért megy, vagyis abba meg van, hogyan pakoljam össze, de itt nem látom át
Igen az Enrollment tartalmazza a Student és Course-t is
Gyakorlatilag már az Enrollments megvalósízja az inner join-t nem? De ha meg nem rakom oda azt a két Includot, akkor nem érem el így a Student nevétXbox One: bandymnc
-
válasz martonx #8571 üzenetére
Hi köszi a választ! Igen, számítottam rád
Nah szóval:
hanem maradj a HTML-nél, és igyekezz minél több mindent html és mvc alapokon tartani.Az Admin oldalon ez már megvan és működik. Van egy _AdminLayout-om ami tartalmazza a linkeket (no meg némi bootstrap formázást) az egyes admin feladatokhoz, ezek a feladatok külön-külön View-ba vannak szervezve. Itt a kontrollerek és a View-k között az adatok ViewModel objektumokkal közlekednek, visszafelé ugyanígy Model-bindinggal.
Szerintem ez a része jó ahogy van. Nem túl esztétikus, de nem is kell az legyen.
A userek felé viszont illene valahogyan esztétikusan kinézzen a dolog. Ehhez töltöttem le egy template-t. Se nem tudnám, se nem akarnám megcsinálni a user oldal HTML+CSS+ izgő mozgó JS design-ját. Ennek egyébként is minimális köze van csak a feladathoz. Az admin tudjon usereket konfigurálni, meghívókat szétküldeni, a kapott visszajelzéseket aggregálva megjeleníteni.
A usernek annyi dolga van, hogy a user View-ban rábökjön, hogy jön-e vagy sem, hányan jönnek, kell-e szállás stb..
Tehát ezt a szép template-t szeretném a korábban általam elkészített management felülettel összeházasítani illetve a user felület néhány tartalmát az admin által konfigurálhatóvá tenni.
A kérdés kifejezetten erre irányult, mégpedig azért, mert eddig az admin felület View-jait adatokkal ellátó ViewModel objektumaim (user adatai, user visszajelzése) mind nagyon karcsúak és feladat specifikusak voltak, most pedig nem tudom, hogy ezeket a kvázi-statikus adatokat (user neveket-bemutatkozásokat, képeket stb kb egyszer kell az adminnak konfigurálnia) hogyan lenne érdemes elszállítani a kontrollertől a renderelt user View-ba.
Ezek mellett a kvázi-statikus adatok mellett még lesz sokkal fókuszáltabb user specifikus adat (pld. üdvözlő szöveg amikor a user az egyedi linken keresztül belép vagy egy visszajelzés arról, hogy már elfogadta-e a meghívást)
Nah szóval leírtam a problémámat, és nagyon szépen megkérlek, ha már vetted a fáradtságot és végigolvastad a dolgot, írtál vagy 30 sort, akkor 2-3 pontba összeszedve valami olyat is próbálj beleírni a válaszodba ami engem most előre visz...
Nagyon szépen köszönöm
[ Szerkesztve ]
-
válasz martonx #8576 üzenetére
Ez is egy példakód volt...
Igen, a linkelt doksit olvastam, azóta megcsináltam ami benne van, továbbra sem működik.
ValidationAttribute-tal.
public class SizeAttribute : ValidationAttribute
{
private int size;
public SizeAttribute(int Size) => size = Size;
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
IFormFile file = validationContext.ObjectInstance as IFormFile;
if (size * 1024 < file.Length) return new ValidationResult($"A maximum image size of only {size}KB is allowed");
else return ValidationResult.Success;
}
}Itt az action method:
[HttpPost]
public IActionResult EditPerson(Person model, int id, [Size(1024)]IFormFile file)Kell még valami? Kell esetleg valahol regisztrálni a SizeAttribute-osztályt?
[ Szerkesztve ]
-
válasz martonx #8580 üzenetére
Nem, azt még nem próbáltam ki.
Alapvetően én ezt az IFormFile-t akarom validálni, maga a model objektumom (Person) nem túl kritikus, annak a propertijeit az osztálydeklarációban dekoráltam [Required]-del, az a része működik és nekem egyelőre elég is.
Dobtam a mai próbálkozásomat (elnapoltam) a kontrollert visszaállítottam a naiv, nem túl alapos kézi validálásra. Jelenleg így néz ki, csak annyi a célja az IFormFile validálásnak, hogy figyelmetlenségből ne lehessen rossz formátumot feltölteni. Tudom, hogy a fájl kiterjesztése semmit nem jelent.
A Person egy ViewModel objektum és tárolja egy személy adatait illetve a képének a relatív útvonalát a wwwroot-hoz képest. Összesen kb 6-10 Person objektum lesz, ezek in-memory tárolódnak (és minden változás mentődik a diszkre). Ők nem userek, hanem csupán koszorúslányok-fiúk, a képük-nevük pedig a Weblapon fog virítani. Az admin egyszer konfigurálja őket a content-manager oldalon utána ezek úgy maradnak.
A dolog nincsen túlságosan kitesztelve, de működik.
[HttpPost] public IActionResult EditPerson(Person model, int id, IFormFile file)
{
// Text based informations (Person object) and IFormFile gets validated separatelly
// The expectation is to execute EditPerson if the Person is valid, even if IFormFile is missing or invalid
// Exceptions can only be raised bc of file IO errors. This should not break the method
// we collect the exceptions to log details later into ModelState
IList<Exception> exceptions = new List<Exception>();
if (id < 0 || store.Data.People.Length <= id) ModelState.AddModelError("", "Error: route variable \"id\" has invalid value");
if (model?.Title != "Groomsmen" && model?.Title != "Bridesmaid") ModelState.AddModelError("", "Http post request contains invalid title: must be \"Bridesmaid\" or \"Groomsmen\"");
if (ModelState.IsValid)
{ // Person object is valid and updates the ContentStore no matter the IFormFile state
store.Data.People[id] = model;
store.Update(store.Data.People);
} // IFormFile gets manually validated
if (file != null)
{
string name = file.FileName;
string ext = Path.GetExtension(file.FileName.ToLower());
if (1024 * 1024 < file.Length) ModelState.AddModelError("", "Error: A maximum image size of 1MB allowed");
if (ext != ".jpeg" && ext != ".jpg") ModelState.AddModelError("", "Error: JPEG file expected extension must be either *.jpeg or *.jpg");
if (ModelState.IsValid)
{
// currently no renaming and no protection against malicious IFileForm-s as file upload is not available for public
string newFileName = file.FileName;
string newFileFullPath = Path.Combine(webRoot, imageFolder, newFileName);
while (System.IO.File.Exists(newFileFullPath))
{
//gets a nice, short random file name in case of a filename conflict
newFileName = (DateTime.Now.Ticks % 1000).ToString() + ext;
newFileFullPath = Path.Combine(webRoot, imageFolder, newFileName);
}
try
{
using (FileStream fs = System.IO.File.Create(newFileFullPath))
{
file.CopyTo(fs);
fs.Flush();
// file path gets saved in cshtml friendly relative path
store.Data.People[id].PictureSrc = "/" + imageFolder + "/" + newFileName;
}
}
catch (Exception ex) { exceptions.Add(ex); }
}
if (0 < exceptions.Count)
{
ModelState.AddModelError("", "Error: Could not upload image");
foreach (var ex in exceptions) ModelState.AddModelError("", ex.Message);
}
else store.Update(store.Data.People);
}
if (ModelState.IsValid) return RedirectToAction(nameof(Index));
else
{ ViewBag.id = id;
return View(model);
}
}[ Szerkesztve ]
-
-
-
lord.lakli
őstag
válasz martonx #8593 üzenetére
Kódot szerintem nem minősíti az elnevezés, maximum a cég konvencióját mutatja. Több olyan terület van, ahol azért az angol változókkal rendesen meg kell szenvedni, mert a fejlesztő nem ismeri az adott terület szaknyelvét, hiába tud angolul. Ráadásul más világnyelvek esetében sem mindig követik az angolt mindig.
[ Szerkesztve ]
-
válasz martonx #8618 üzenetére
csak rá szeretnék világítani az újabb kódszervezési problémákra, overengineering jelenségre.
Ezek a "képek, formázások, csicsa-micsa" repositoriból jönnek, mert admin által konfigurálhatóak. Emiatt én úgy gondolom, hogy ezeknek a dinamikus elemeknek az előteremtése és renderelése jól illeszkedik egy ViewComponentbe. Ez saját hatáskörében előteremti ezeket. Így a ViewComponent felszabadítja parent View (Index.cshtml) a ViewModel objektumotát, hogy annak kizárólag a Html-Form feltöltésével és kelljen foglalkoznia.
Szerintem ez a konstrukció logikus és jól kezelhető is. A döntő többsége, minden ami a @RenderBody()-ból jön működik is. A problémám hogy amit @RenderSection()-nel akarok beilleszteni a Layout-ba, na az nem működik. Gyanítom, hogy a megoldás nagyon kézenfekvő annak aki nálam jobban benne van a Razor-ban (ez utóbbi nem nagy feladat).
Javaslom ne bonyolítsd túl feleslegesen a kódodat. Hidd el, nem attól lesz szép a kódod, hogy a kereket kézben viszed, a szögleteset meg gurítani akarod.
Ha esetleg van kedved rávilágítani azokra a pontokra ahol szerinted a kereket kézben viszem, a szögletest pedig gurítani akarom, akkor szívesen megosztom a kódnak a releváns részeit és ha van rá jobb ötleted én biztosan kijavítom...
[ Szerkesztve ]
-
válasz martonx #8630 üzenetére
igen-igen, azóta már tudatosult bennem, hogy ezeknek a "participantoknak" nincsen szüksége ugyanazokra az identity szolgáltatásokra mint az admin accountoknak.
csak mivel az admin részt implementáltam először, aztán mivel emiatt "benne voltam" az Identity-témában, így "adta magát", hogy az IdentityUser táblát használjam a participantok személyes adatainak kezelésére is (ezek külső importból jönnek). már tényleg inkább külön táblába raknám a participantokat. Most egy darabig ott maradnak...
[ Szerkesztve ]
-
válasz martonx #8641 üzenetére
Igen, én is arra jutottam, hogy nem működik és a legjobban akkor járok, ha SettingsModel <=Json=> settings.json alapon mentem le fájlba.
Ehhez képest a doksi azt mondja, hogy:
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-2.1File Configuration Providers have the ability to reload configuration when an underlying settings file is changed after app startup. The File Configuration Provider is described later in this topic.
És ha megnézed, beállítottam a
reloadOnChange
flag-et.Mivel a Configuration nem tartalmaz olyan opciót, hogy mentse a file-ba a változásokat, ezért próbaképpen
felülírtam a konfig file-t:File.WriteAllText("MySettings.json", jsonString)
Nem olvasta újra a konfigurációt a felülírt fájlból...
Más doksik is azt mondják, hogy a reloadOnChange "elméletileg" működik[ Szerkesztve ]
Ú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!
- HP 14-em0001ne - ÚJ - 14" FullHD IPS notebook - Ryzen 3-7320U, 8GB
- Új bontatlan Sandisk Ultra 3d SSD 4TB és Samsung 2.5 870 Evo 500GB SATA3 (MZ-77E500B)
- BONTATLAN ÚJ iPad Pro 2021 2022 M1 M2 Chip 11 és 12,9 128-2000GB DEÁK TÉRNÉL AZONNAL ÁTVEHETŐ
- Új! Lenovo IdeaPad Slim 5 Prémuim Laptop 16" -AMD Ryzen 5 7530U 8/512 AMD Radeon Graphics 2GB ! FHD+
- Samsung Galaxy Book2 Pro 360 Evo 13,3 makulátlan állapotban
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Alpha Laptopszerviz Kft.
Város: Pécs