Új hozzászólás Aktív témák
-
alratar
addikt
Sziasztok.
Ismerkedem az MVVM-mel.Létrehoztam egy gombot, aminek annyi lenne a feladata, hogy egy
TextBlock
tartalmát törölje.
Addig eljutottam, hogy aCommand
kell aClick
event helyett, de azICommad
interfész implementálásánál elvérzek.
Sokan ajánlottá a Caliburn Micro-t, de ha nem muszáj nem használnék külső cuccokat.Tudnátok segíteni nekem?
10 féle ember van: aki ismeri a bináris számrendszert, és aki nem
-
bandi0000
nagyúr
Lenne egy kis gondom EF Core-ban
Van 2 tábla, 1-1 kapcsolat van köztük, ApplicationUsers és ForgotPasswords
ForgotPasswords táblába vettem fel tulajdonságként az ApplicationUser-t
Elmentek egy rekordot ForgotPassword táblába, látszik is az adatbázisba az ApplicationUser kulcsa, viszont ha lekérdezném a usert-t, akkor null-t kapok
var user = forgotPasswordRepository.getToken(model.ForgotPasswordToken).ApplicationUser;
Olvasgattam és olyasmit írnak, hogy bekéne Include-al dobni az ApplicationUser táblát is, de nincs Include-om, vagy legalább is nem ajánlja fel
Ezt hogy lehetne megoldani?
Xbox One: bandymnc
-
Alexios
veterán
-
AnyamBorogas
csendes tag
hello!
Szeretnék egy iterációt végigcsinálni x darab textBox-on, úgy, hogy pl textBox1-ben van egy string, az eltűnik, és megjelenik textBox2-ben majd ez így tovább x-ig, közte mondjuk 1s sleep-el. Illetve ugyan ez visszafelé pl buttonClick-re.
Erre valaki tud help-et, sajna Google nem segített sokat. -
friky81
csendes tag
Sziasztok
Volna egy kérésem
Egy olyan kódot szeretnék írni ami a windows alatt tetszőleges darabot kimásol az asztal képernyőről bármi is legyen a képernyőn azt elmenti egy kép formátumba vagy hasonló
Lényegében a szövegfelolvasó progik is valahogyan hozzáférnek a képernyő képéhez.
Nekem is valami ilyesmi kéne
Valaki tudna segíte egy rövid koddal ? -
sztanozs
veterán
válasz friky81 #9207 üzenetére
A szövegolvasók a kurzor (vagy egér) alatti legfelső kontrollt keresik, amiben van szöveg. Általában nem ORC módon olvasnak fel, hanem konkrétan hozzáférnek a szöveghez.
Amit kérdeztél: [link]
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
friky81
csendes tag
válasz sztanozs #9208 üzenetére
a lényeg hogy én nem feltétlenül szöveget akarok kinyerrni hanem maga a képernyöre vetitett képből akarok másolni
Elméletileg a kivetitett kép a memoriából kerül a képernyöre onnan kéne kiolvasnom de úgy hogy ne befolyásolja a kivetitést nem akarom felülírni a memoriarészt csak olvasni
Kezdetne elég lenne némi ifo milyen formában van a kép a memoriában esetleg memoriacim ... valami fügvény esetleg ha van rá .... -
Jokerpoker
csendes újonc
Sziasztok!
Írtam egy programot, ami lekéri a Szerencsejáték Zrt weboldalnak a forráskódját.
Az lenne a kérdésem, hogy hogyan tudom ebből a hosszú forráskódból kiszedni azt az öt számot, amik a múltheti nyerőszámok? -
kispx
addikt
válasz Jokerpoker #9212 üzenetére
Egyszerűbb ha a CSV-t töltöd le.
-
Keem1
addikt
válasz Jokerpoker #9212 üzenetére
Valóban egyszerűbb a CSV, de ha nem riadsz vissza a kihívásoktól, akkor egy HTML parsert javasolnék, ahol xpath alapján kéred le az adatot. Akár B opciónak, házi feladatnak a CSV feldolgozás mellett ezt is kipróbálhatod, én így gyűjtöm a koronavírus infót a hivatalos oldalról már 2 és fél hónapja. Plusz parse-olok időjárási oldalakat is, már 4 évre visszamenő, óránkénti bontású saját statisztikám van. Az évek során többször variáltam az adatforrásokat, mivel voltak olyanok, ahonnan kitiltottak a gyakori lekérés miatt.
Én a HtmlAgilityPack nevűt használom, ez még a HTML lekérést is megoldja, https oldalról is, ráadásul én egy listából variálom a useragenteket (van köztük valós Chrome, Safari, IE, Firefox is), hogy ne tűnjön robotnak a program és ne tiltsák ki az oldalakról
[ Szerkesztve ]
-
Azure DevOps Pipeline vs Azure DevTest Lab custom VM-ek indítása leállítása pipelineból
Azure DevOpsban van egy projektem, ehhez tartozik egy Build Pipeline (YAML-formátumban). A build pipeline több stage-ből áll. Az első stage-ban egy standard Microsoft VM agent buildeli a kódot stb.
A következő stage már custom agenteket használ (funkcionális tesztek), ezeket a custom agenteket Azure DevTest Lab-ben hostolom és a DevOps-ban egy "Environment"-be vannak beregisztrálva. Ezeket a DevTest Lab-ben futó custom agenteket aztán a pipeleneból Deployment jobokkal managelem, osztok rájuk taskokat. (ez így szépen működik)
A kérdés az az, hogy hogyan tudnám a VM-eket a pipelineból powershell taskkal indítani leállítani.? Most nem nagyon érek rá kísérletezgetni, de tök jó lenne, ha ez is menne.
Gondolom maga az indítás leállítás valami Get-AzVM -Name *akármi* | Start-AzVM szerű dolog lesz, de az autoritzáció része nekem nem tiszta. Szóval csinált már valaki ilyet?
[ Szerkesztve ]
-
Dinter
addikt
Sziasztok!
UWP-ben állítanám be az ablak szélességet, minndehol ezt az egy fajta megoldást írják:
ApplicationView.PreferredLaunchViewSize = new Size(531, 900);
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
Hiába állítom be, 20-ból egyszer működik Miért?[ Szerkesztve ]
-
DrojDtroll
addikt
.net core 3-as web api-s projektben miért nem tudom használni a Bitmap class-t? Amikor bereferenciálom a system.drawing.dll-t a következőt kapom:
Failed to create the wrapper assembly for type library "{d37e2a3e-8545-3a39-9f4f-31827c9124ab}". Type library 'System_Drawing' was exported from a CLR assembly and cannot be re-imported as a CLR assembly.
-
dqdb
nagyúr
válasz DrojDtroll #9219 üzenetére
Ne a rendszerben található, .NET Frameworkhöz tartozó dll-t add hozzá referenciaként, hanem ezt a NuGet csomagot.
tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek
-
Jokerpoker
csendes újonc
Sziasztok!
Írtam egy programot, ami kiírja egy .txt fájl hosszát. A program "OutOfMemory" hibakódot dob ki, de csak 2GB ramot terhel, miközben a gépemben 16GB memória van.
Hogyan lehet ezt a "korlátozást" megszüntetni?A program kódja a következő:
string path = @"C:\test.txt";
StreamReader sr = new StreamReader(path);
Console.WriteLine("Karakterek száma a szövegben: {0}",sr.ReadToEnd().Length);
Köszönöm a válaszokat előre is! -
dqdb
nagyúr
válasz Jokerpoker #9222 üzenetére
Project Properties > Build > Prefer 32-bit opció kikapcsolása, hogy lehetőleg 64 bites változat induljon el 64 bites OS-en a programból.
Azt azért megjegyezném, ha előre lehet tudni, hogy hatalmas fájlokkal lesz dolga az embernek, akkor feldolgozás megírásakor a legutolsó utáni dolog után jön csak pár lépéssel az a megoldás, hogy beolvassa a memóriába az egészet.
tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek
-
válasz Jokerpoker #9222 üzenetére
Ha a hosszra vagy kiváncsi (ami kódolástól függően nem feltétlenül egyenlő a karakterek számával)
https://docs.microsoft.com/en-us/dotnet/api/system.io.fileinfo.length?view=netcore-3.1[ Szerkesztve ]
-
DrojDtroll
addikt
Sziasztok!
Egy kis WPF WTF
Van egy Image control-om aminek a HorizontalAlignment-jét próbálom beállítani. Left és Right értéken tökéletes, de Centeren nem esik középre.
https://www.youtube.com/watch?v=QZgKbiGMaQg&feature=youtu.be
Mi lehet a megoldás?
-
DrojDtroll
addikt
válasz DrojDtroll #9225 üzenetére
A HorizontalAlignment property nélkül tökéletes középen van.
MÁS:
Van itt olyan forumtárs aki annó fejlesztett windows 8-as vagy 8.1-es telefonra? -
Alexios
veterán
válasz DrojDtroll #9226 üzenetére
Én fejlesztettem még rá régen, bár túl sok minden nem rémlik már belőle
-
OldBoyDev
újonc
Szervusztok!
A problémám: van egy formom rajta egy adatrács feltöltve adatokkal, innen meghívok egy másik formot fx.Show(); itt teszek dolgokat, majd visszatérek az első formba. És azt szeretném, hogy frissíteni tudjam az első formon lévő tableadaptert és ezáltal az adatrácsot is.
Bocs, ha körülményesen fogalmaztam. A környezet: Winforms és C#.
Köszönöm! -
Úgy tűnik csak a topik halott, nem a .NET
https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-5/
-
petyus_
senior tag
Sziasztok!
Blazorrel foglalkozik itt valaki? Egy angular app-ot kezdtem el átírni, és előjött egy hiba, amit sehogy sem tudok megoldani.
Van egy formom, a model-validationt attribute-okkal oldom meg. Írtam egy saját attribute-ot, RequiredIf, megadhatod benne, hogy akkor legyen required a field, ha egy másik property-nek az értéke egyezik azzal, ami megadsz.
pl:
[RequiredIf(nameof(Foo), new[] { "Bar"}, ErrorMessage = "Category must be set.")]
public int? CategoryId { get; set; }Itt a másik property a Foo, ha Bar az értéke, akkor a CategoryId nem lehet null vagy 0.
Ezt a modellt használom a Blazor formban, és a validation kicsit furán működik. Foo-t beállítottam Bar-nak. Raktam a formba egy ValidationSummary-t is, és az adott field-hez tartozó ValidationMessage-t is.
Ha nyomok egy submit-ot, akkor a ValidationSummary-ben megjelenik az error, de az input mellett nem.
Ha megváltoztatom az ehhez a fieldhez tartozó inputot, akkor megjelenik a ValidationSummary-ben, így ott kétszer szerepel az error, közben megjelenik a ValidationMessage is, és az input is piros lesz.
Ha most megint nyomok egy submitot, akkor a summary-ből az egyik error eltűnik, a field mellet message is, és az input zöldre vált.Csatolok képet, van ott egy Amount field is, az sima int (nem nullable), és egy Range[(1, int.Max)] van rajta, az teljesen jól működik.
Valakinek esetleg van ötlete?
[ Szerkesztve ]
-
petyus_
senior tag
Közben sikerült rájönnöm, az attribute-ban amikor visszaadtam a ValidationResult-ot, nem adtam át a memberName-t.
Ezért amikor az adott field-et módosítottam, odarakta az errort, mert tudta, hogy azzal van a gond, viszont amikor submit-ra nyomtam, akkor nem tudta, hogy melyik fieldhez tartozik az error. -
coco2
őstag
Sziasztok!
Segítséget szeretnék kérni a task pool cancel mechanizmus megértéséhez. Az msdn oldalak elolvasása után még mindig vakarom a buksit, hogy akkor ez most hogyan is. Konkrétan a menet közben élezhető cancel mechanizmus az, amit nem találok.
A task-okhoz van egy olyan, hogy [cancel token]. Kicsi szépséghibaként a konstruktora azt mondja, hogy vagy false-al töltöm, amikor sem nem ad cancel parancsot, nem nem képes arra kapcsolni, vagy true-val töltöm, és akkor meg alapból cancel parancsot ad, amit átmenetileg kikapcsolni sem tudok. Példa kódokból is csak mellébeszélőseket találtam.
Fésülte már ki valaki azt a gubancot egyenesre?
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
A TaskFactory-val van a problémád vagy magával a CancellationTokenSource => CancellationToken mechanizmussal?
A cts -token egy távirányítós bomba. A bomba a Token a távirányító pedig a CancellationTokenSource. a kliens kódnál a távirányító (CTS) és a távirányítóhoz tartozó bombát átadja a hívott metódusnak a Token formájában. Te mindig a CTS-t hozod létre konstruktorral, a Tokent a CTS propertijeként kapod meg.
Amikor megunod a várakozást, robbantod a bombát a távirányítóval.
A példakódot lefuttattam, ott ha AggregateException jött jelzi azt, hogy a CTS-en meg lett hívva a cancel.
[ Szerkesztve ]
-
coco2
őstag
válasz joysefke #9240 üzenetére
Elkerülendő a további félreértéseket, külön idemásolom a hivatkozott kódrészletet, mert az egész akkora égbekiáltó hazugság, hogy ihaj.
for (int ctr = 1; ctr <= 10; ctr++) {
lock (lockObj) { value = rnd.Next(0,101); }
if (value == 0) {
source.Cancel();
Console.WriteLine("Cancelling at task {0}", iteration);
break; }
values[ctr-1] = value; }
Ugyan had tegyem fel a költői kérdést, hol van annak a task kilépésnek bármi köze a cancel token változásához ?
(A teljes kód példa az előző hsz-ben a linken található.)
[ Szerkesztve ]
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
-
Nem értem hogy mi a probléma meg milyen token referenciáról beszélsz.
A token egy struct, ami tartalmazza az őt létrehozó CTS referenciáját. Te ezt nem látod, mivel a token structon a cts-re mutató referencia nem publikus. (pont ez a pattern lényege, hogy ne lehessen össze vissza cancellelni csupán a cts birtokában)
A cancel pedig kétféle módon propagálódik:
1, Te manuálisan a saját magad függvényében ellenőrzöd, hogy történt-e cancel:
bool token.IsCancellationRequested vagy
void token.ThrowIfCancellationRequested()2, Valamelyik framework API akinek Task létrehozásakor átadtad a tokent ellenőrzi a token állapotát és saját maga rakja az általa felügyelt Task állapotát Cancelled-re. A TaskFactory gondolom egy ilyen valami. (nem ismerem a TaskFactory-t)
[ Szerkesztve ]
-
coco2
őstag
[System.Net.Sockets.TcpListener] és [System.Net.Sockets.TcpClient] kérdés.
Arra lenne szükségem, hogy az egyszer elfogadott kapcsolatok biztosan stabilak maradjanak akkor is, ha a tcp listenert leállítom, és később újraindítom (támadások elleni védekezési lépések).
Azt persze tudom tesztelni, hogy listener .Stop() után az adatáram stabil marad, de az ugye valamelyik dotnet verzió esetén éppen úgy van, és nem elvi szintű ígéret, hogy később is úgy marad.
Próbáltam elvi szintű dokumentációkat keresni, mi is a szitu, de eddig nem találtam.
Ha irány vissza a kályhához, akkor van a nyers hálózati csomag, ip header + tcp header, és abban benne van a szerver oldali port is. Még ha egy megnyitott socket létezik is, az OS elvileg érzékelheti a listen port lezárását, és eldobhatja a beérkező csomagot azon az alapon, hogy bocsi, de a címzett porton jelenleg nincsen jegyezve semmi. Van arra szabványi előírás, ami egészen biztosan megtiltja az OS-nek, hogy olyat tegyen?
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
El vagyok veszve az ASP verziók és szuboptimális lehetőségek között, segítség kéne
Egy új ASP Web API projektet kell írni (REST, json). A saját már létező komponensek amiket kikerülhetetlenül használni kell, targetje Net472. Jó pár ezek közül nem konvertálható egyszerűen netstandard2.0-ra, és ezen adott idő alatt nem tudunk segíteni, ez már eldölt.
Az új az ASP web-projekt mellé készülő library komponensek targetje Standard2.0 lesz, ez a stratégiai irány. A régi komponensek is előbb vagy utóbb átvándorolnak standard2.0-ra, de ez nem most lesz.
Az ötlet az, hogy használunk "valamilyen" .Net Framework 4.7.2+ -en futó ASP verziót, használjuk a meglévő saját frameworkos librarykat az újakat pedig standard2.0-ban gyártjuk. Aztán amikor alkalom adódik rá, az ASP projektet is migráljuk/lecseréljük a majdani legfrissebb ASP Net Core-ra.
Az ASP projekt alá jelenleg olyan kevés kód kerülne ami csak lehetséges, minden ami szükséges standard2.0-ás libraryba vándorolna, lehetőleg úgy hogy majd később asp net core alól változatlanul fel tudjuk használni.
=====
És akkor most tanácstalan vagyok, hogy nekem valami régebbi ASP NET Core-t kell nézni (ezek ha minden igaz 2.2-ig bezárólag tudtak futni Framework runtimen is, de erről csak olvastam) vagy valami legújabb ASP.NET 4.x -et Web API 2-vel??
Az ASP Net Core 2.x-ek ha minden igaz már end of life...
VS19 támogatásnak eléggé örülnék.
=====
Nézegettem a docs.mscom oldalt, de egyszerűen nem találtam jó táblázatokat...
[ Szerkesztve ]
-
sztanozs
veterán
Ha "rendesen" leállítod, akkor a szerver vagy a kliens dob a túloldalra egy FIN csomagot. Ezzel értesíti a túloldalt, hogy a csatornát be kell zárni. Sztenderd módon a túloldalnak válaszolni kell egy ACK csomaggal és küldenie szintén vissza egy FIN csomagot amit a kezdeményező oldal lenyugtáz egy ACK-val. Tehát, ha normál módon (Listener.Close vagy Client.Close-zal) zársz le egy kapcsolatot, akkor a túloldal értesülni fog róla, hogy bezárod, így nem tartja nyitva a csatornát.
Alapból a TCP protokoplban nincs keepalive ping, szóval, ha kézzel vezérled a TCP kapcsolatot, akkor simná le tudod lőni a listener-t és újra felhúzni, feltéve, ha vissza tudod állítani a TCP stack-et a lezárást megelőző állapotba (tehát tudni fogod, milyen porton kivel kommunikál).JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
martonx
veterán
válasz joysefke #9246 üzenetére
Hát én a helyedben Asp.Net Core 2.1-el állnék neki, ha már mindenképpen cél az ősi .Net Framework 4.7.2
Ugyanakkor nem értem, hogy miért erőlteted a netstandard2.0-át. .Net 4.7.2 netstandard 1.x-ig jó, én a meglévő komponensek esetében megelégednék netstandard 1.x-el, amit viszont zokszó nélkül tud használni a .Net Core 3.1 is.Én kérek elnézést!
-
válasz martonx #9248 üzenetére
Hát én a helyedben Asp.Net Core 2.1-el állnék neki
Végül az lesz.
Ugyanakkor nem értem, hogy miért erőlteted a netstandard2.0-át. .Net 4.7.2 netstandard 1.x-ig jó, én a meglévő komponensek esetében megelégednék netstandard 1.x-el, amit viszont zokszó nélkül tud használni a .Net Core 3.1 is.
A netstandard2.0-t a Core 3.1 és a net472 is ,egvalósítja. Semmit nem nyernénk, ha 2.0 alatti standardot próbálnánk targetelni, csak saját dolgunkat nehezítenénk meg.
A konvertálás úgy fog zajlani, hogy projektről projektre (levelekkel kezdve amelyeknek nincs dependenciája másik saját prokjekt felé) egyenként át lesz állítva a csproj formátum modernre (SDK style és package reference) a <TargetFramework> property pedig net472-től netstandard2.0-ra. Mivel a netstandard2.0 API szűkebb API mint a net472 ezért lesznek olyan hívások amit ki kell szervezni vagy ki kell vágni vagy helyettesíteni kell mással, mert nincsen standardes megfelelője. Minnél alacsonyabb standardet próbálnánk targetelni, annál nehezebb dolgunk lenne, mert annál több frameworkos API-nak nem lenne standarden megfelelője. Így is nehéz dolga lesz annak aki csinálni fogja, már volt egy nekifutás...
A saját új class library projekteknél pedig azért nincsen értelme netstandard2.0 alá targetelni, mert az összes futtatókörnyezet ami képben van (jelenleg a net472 és később meg valami core-latest) megvalósítja a standard2.0-t.
[ Szerkesztve ]
-
zsolti_20
senior tag
Sziasztok! Írtam egy egyszerű console appot ami kitudja olvasni a bizonyos cella értékét excel fileból, de a problémám az, ha megváltoztatom, az értéket a programom a régit olvassa. Gondolom előre feltölti a memóriába az excel filet és abból dolgozik, így csak akkor lesz olvasható számára a változás ha az excel file mentésre kerül és újból lefuttatom a file megnyitás részét a kódnak.
A problémám az, hogy ez elég időigényesnek tűnik, mert másodpercenként legalább 2 értékváltozást kikellene olvasnia.
A kérdésem az, hogy lehetséges úgy megoldani hogy mint cserélem az értéket a cellában úgy a programom is felismerje és kitudja olvasni?using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int i = 0;
string path = "mappa+filenév";
Application excel = new Application();
Workbook wb = excel.Workbooks.Open(path);
Worksheet excelSheet = wb.ActiveSheet;
while (i < 5)
{
Console.WriteLine(i);
string test = excelSheet.Cells[1, 1].Value.ToString();
Console.WriteLine(test);
}
wb.Close();
//Read the first cell
}
}
}
Ú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!