Új hozzászólás Aktív témák
-
Boolash
aktív tag
Sziasztok,
arra van lehetőség, hogy updatepanelben lévő gomb egy updatepanelen kívüli controlt (nincs más updatepanelben) módosítson? -
Boolash
aktív tag
Lenne egy másik kérdésem is. Szeretnék visszajelzést küldeni, ha az oldal tölt (progress bar). Ezt meg is valósítottam abban az esetben, ha rákattintok a gombbra, elindul a lekérdezés, majd egy gif egy updatepanelben pörög. Teljesen jól működik.
Viszont most arra lenne szükségem, hogy akkor kapjak ilyen visszajelzést, amikor az ASP-s oldalam az első töltését végzi. Ilyenkor a Page_Load eseményben elég sokminden meghívódik, ami eltart egy jó ideig (tehát nem csak azért lassú, mert éppen fordul).
Köszi -
Boolash
aktív tag
válasz
martonx #2499 üzenetére
IList-et használok:
static IList<ADList> ls = new List<ADList>();
A hozzá tartozó class elé kirakom:
[Serializable]
Majd:
Session["cegem"] = ls;
...
ls = (IList<ADList>)Session["cegem"];Viszont ugyanaz a hibaüzenet. Mintha úgy olvastam volna, hogy a .Net megcsinálja a szerializálást ebben az esetben, elég kirakni az osztály elé [Serializable] jelzőt.
-
Boolash
aktív tag
válasz
ArchElf #2495 üzenetére
Nem, jelenleg így néz ki:
namespace FileInfo
{
class ADList
{
public string CmpName { get; set; }
public string CmpCode { get; set; }
public int? ID { get; set; }
}
}Ha jól értem arra gondolsz, hogy generáljak belőle egy szöveget (stream), majd így rakjam a session-be, majd de-szerializálás.
Ez elvileg csak annyi lenne, hogy örökölni kell ISerializable osztályból? (: ISerializable) -
Boolash
aktív tag
válasz
Boolash #2493 üzenetére
Sikerült, viszont generikus listát nem tudok kiolvasni..
Létrehoztam egy ADList osztályt, melyet lista típusnak használok:
static List<ADList> ls = new List<ADList>();
Majd ezt a listát mentem el sessionbe:
Session["cegem"] = ls;Idáig minden rendben. Majd kiolvasásnál:
ls= (List<ADList>)Session["cegem"]Erre viszont: Object reference not set to an instance of...
Valószínüleg a casting-al van baja.
próbáltam, hogy létrehozok egy új listát, majd abba teszem bele, de azt sem engedte.
Mi lehet a trükk?Köszi
-
Boolash
aktív tag
Sziasztok!
Jelenleg egy webalkalmásban minden oldalon a page load eseményben futtatok egy LDAP lekérdezést. Ebből nyerek ki biztonsági információkat, ami az aktuálisan bejelentkezett felhasználóhoz köthető.
Hogy lehetne megcsinálni, hogy bejelentkezés után lékérem ezeket az információkat, valahol letárolom, majd onnan olvasom midig ki. DB-ben tárolás jut csak eszembe, de ezt kicsit erősnek tartom.
A konkrét probléma egyébként egy SharePoint-os környezet, ahol webpartokat fejlesztek.
Köszi a tippeket! -
Boolash
aktív tag
Nem értem, hogy miért nem megy így. Csináltam egy Labelt, amit a Response részek előtt átírok (látszik a kódban). Ha kiveszem a Response részeket, akkor kattintás után látszik az eredmény, illetve tudok többet kattintani is, tehát nem a linkbuttonnal van a gond, hanem a response részekkel. De miért nem zárul le a response? Próbáltam Response.Close() , de az sem segít..
Nem találtam a neten más módszert a fájl letöltésre, viszont ha csak ez van, akkor ennek mennie kellene popup nélkül is. Popup megoldást csak végső esetben alkalmaznám... átadni azt a sok attribútumot (pl bináris kód), vagy még egy lekérdezés.. meg egy új ablak..
Nincs valami más lehetőség?
Köszi, hogy segítesz! -
Boolash
aktív tag
-
Boolash
aktív tag
Sziasztok,
Elakadtam egy problémával, remélem tudtok tippet adni.
VS2010-ben fejlesztek VisualWebPartot. Adatbázisba töltöttem fel fájlokat (binárisan tárolom) illetve a hozzá tartozó adatokat, és most ezeket szeretném kiolvasni, letölteni.
Indítottam egy Linq to Sql lekérdezést, mellyel megtaláltam a számomra érdekes elemeket. Ezeket egy Listába tárolom. Az egész lekérdezést a Page_Load -ban végzem, hogy az oldal betöltésekor már meglegyen ez a listám. Viszont nem szeretném, hogy ezt a lekérdezést többször is el kelljen végeznem, ezért Postback esetben nem végzem el ( if (!Page.IsPostBack))A Listát egy SPGridView-ban jelenítem meg. Az spgridview-ban lényegében a dokumentum neve és az ID-ja jelenik meg (egyedileg azonosítja).
A dokumentum nevét LinkButton-ban jelenítem meg. OnCommand() eseményre egy függvényt hív, melyben végzem el a letöltést, CommandArgument-ben elküldöm az adott ID-t.
<asp:TemplateField HeaderText="Név">
<ItemTemplate>
<asp:LinkButton
ID="LnkDownload"
runat="server"
Text='<%# Eval("Name")%>'
OnCommand="download"
CommandArgument='<%# Eval("ID")%>'>
</asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>A download metódus a cs-ben:
protected void download(Object sender, CommandEventArgs e)
{using (DataClasses1DataContext dc = new DataClasses1DataContext("Data Source=..."))
{
int a;
bool b = int.TryParse(e.CommandArgument.ToString(), out a);
Document d = doksik.Single(p => p.ID == a);Label1.Text = d.Name;
Response.Clear();
Byte[] bytes = (Byte[])d.BinaryData.ToArray();
Response.Buffer = true;
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = d.MimeType.ToString();
Response.AddHeader("content-disposition", "attachment;filename="
+ d.Name.ToString());
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();}
}
Az SPGridview szépen megjelenik, benne a linkbutton is. Rákattintok, és le is tudom tölteni. Viszont a következő kattintás már nem lehetséges (se linkbuttonra se sima buttonra...). Olyan mintha a postback nem futna le...
Nem vagyok tökéletesen tisztában a működéssel, de szerintem van valahol egy ajax-os scriptmanager, mert ha próbálok egyet hozzáadni, akkor nem engedni, azt írja, hogy már van. Próbálkoztam updatepanelbe rakni, majd triggert állítani rá, de nem működött (ugyanaz).
Próbálkoztam response.redirect-el, de ez nem lenne jó, mert ilyenkor a linq lekérdezés is ismét lefutna...
Próbáltam postback hívással javascriptből, de nem történt változás..
Mi lehet a gond?
Köszönöm -
Boolash
aktív tag
Köszönöm a segítségeket, sikerült!
Létrehozok egy Listát, majd ebbe pakolom az eredményeket:List<Doksik> osszes = new List<Doksik>();
....
foreach (var ered in eredmeny)
{
Doksik doksik = new Doksik();
doksik.Title = ered.Title;
doksik.Id = ered.Id;
osszes.Add(doksik);
}Ehhez persze kell egy Doksik class is.
Köszi
-
Boolash
aktív tag
Az a baj, hogy amit a foreach-ben visszakapok, vagyis a gruser.LoginName az egy string, ami valójában a dokumentumtár neve.
Tehát létrehozok egy class library típisú listát, amibe ezeket a string-eket pakolom. Ebből nem látom, hogy hogyan tudnám kinyerni az aktuális string-hez tartozó dokumentumtárban lévő Item 1-1 mezőjét (Title, Id).
Ehhez kell nekem a Linq.
EntityList<Item> test = cedc.GetList<Item>(gruser.LoginName);"
Ez a sor pedíg pontosan a fent említettek miatt kell, mert a loginname az String, de a fenti segítségével megkapom a string-hez tartozó dokumentumtárat.
A linq lekérdezésben nem adhatom meg string-ként a forrást:
var eredmeny = from aktualis in test
Vagyis a test-nek objektumnak kell lennie.Egyébként a Linq-ra még azért is gondoltam, mert itt csak teszt jelleggel kiírom az értékeket, de majd szűrést is akarok belevinni (where).
Lehet nem jól állok neki a dolognak, mert eddig az ilyen jellegű kereséseket powershellben oldaottam meg, CAML queryk segítségével, és ott nagyjából így ment. Itt is mehetne, de szeretném linq-val megcsinálni.Köszi!
-
Boolash
aktív tag
Igen, nem akarok a foreach-en belül változtatni grid datasourcot, de a foreach-en kívül meg nem látja a "var eredmeny" -t.
A siteon vannak dokumentumtárak, melyeket a felhasználói loginnévvel neveztem el.
Lényegében a gruser.LoginName adja meg a dokumentumtárak nevét, és én ezekben keresek (kiiratom a Title és az Id értéket tesztként). Ezért kell a foreach, mert végigmegyek az összes doksitáron, majd keresem benne a Title és az Id értékeket, melyeket egy var eredmeny -be pakolok. Csak nekem a végeredmény kellene. -
Boolash
aktív tag
-
Boolash
aktív tag
válasz
martonx #2202 üzenetére
Azért mert ilyenkor a foreach-ben csak az utolsó érték kerül bele, nem az összes.
Így nézne ki:foreach (SPUser gruser in gr.Users)
{
CeDataContext cedc = new CeDataContext("http://spdeveloper");
EntityList<Item> test = cedc.GetList<Item>(gruser.LoginName);
var eredmeny = from aktualis in test
orderby aktualis.Title
select new { aktualis.Title, aktualis.Id };
GridView1.DataSource = eredmeny.ToList();
GridView1.DataBind();
} -
Boolash
aktív tag
Sziasztok,
Segítséget kérnék, mert elakadtam egy problémában...
Linq to SharePointot szeretnék megvalósítani. Sikerült legenárlni spmetal segítségével a datacontext-et, majd példányosítottam is. Az eredményt egy DataGridView-ba szeretném megjeleníteni. Egyszerűbb lekérdezések sikerültek is, a baj ott van, amikor több táblán keresztül végeznék lekérdezést. Ekkor az eredményt megkapom minden egyes esetben, viszont nem tudom belerakni az eredményül kapott objektumot egy listába, hogy végül azt adjam meg DataSource-nak...A lényeg:
foreach (SPUser gruser in gr.Users)
{
CeDataContext cedc = new CeDataContext("http://spdeveloper");
EntityList<Item> test = cedc.GetList<Item>(gruser.LoginName);
var eredmeny = from aktualis in test
orderby aktualis.Title
select new { aktualis.Title, aktualis.Id };
}
GridView1.DataSource = ?????
GridView1.DataBind();Próbáltam, hogy létrehozok egy List<Item> -et, majd ezt beadni DataSource -nak.. de nem tudtam hozzáadni új elemet..
List<String> osszes = new List<Item>();
....
foreach (var ered in eredmeny)
{
osszes.Add(ered);
}Hiba:
Cannot implicitly convert type 'System.Collections.Generic.List<Item>' to 'System.Collections.Generic.List<string>'Hogy kellene megoldani?
Köszönöm előre is! -
Boolash
aktív tag
válasz
Sk8erPeter #2153 üzenetére
Pontosan, a megoldás tökéletes!
Nagyon köszönöm!
-
Boolash
aktív tag
válasz
Sk8erPeter #2150 üzenetére
Okés
Persze arra gondoltam, hogy külön css fájlban
Egyébként a generált html output IE és mozilla esetében ugyanaz. Esetleg bemásoljam az idevágó részt? -
Boolash
aktív tag
Sziasztok,
Van egy kis problémám, remélem tudtok segíteni.
Csináltam egy egyszerű formot asp .net-ben, melyben van egy gomb, mellyel egy újabb textbox jelenik meg, tehát egy újabb bevitel lehetséges. IE alatt jól megy, viszont firefox alatt szétcsúszik a táblázatom... Konkrétan a táblázat szélessége megnő, illetve a benne lévő oszlopok szélessége is megváltozik (pedig css-ben rögzítve vannak)aspx:
<asp:Table ID="Table1" runat="server" align="center" style="width: 60%;"
CellPadding="0" CellSpacing="0" BackColor="#DEDFDE" >
<asp:TableRow>
<asp:TableCell CssClass="style5">
Language
</asp:TableCell>
<asp:TableCell CssClass="style2">
<asp:TextBox ID="TextBox9" runat="server"></asp:TextBox>
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell CssClass="style5">
Level:
</asp:TableCell>
<asp:TableCell CssClass="style2">
<asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList>
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell CssClass="style5" ColumnSpan="2" ForeColor="#FFFF66">
<input type="button" onclick="megjelenc1();" value="Add one more" />
</asp:TableCell>
</asp:TableRow>
<asp:TableRow ID="Lang2_1" style="display: none;" >
<asp:TableCell CssClass="style5">
Language
</asp:TableCell>
<asp:TableCell CssClass="style2">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:TableCell>
</asp:TableRow>
<asp:TableRow ID="Lang2_2" style="display: none;">
<asp:TableCell CssClass="style5">
Level:
</asp:TableCell>
<asp:TableCell CssClass="style2">
<asp:DropDownList ID="DropDownList2" runat="server"></asp:DropDownList>
</asp:TableCell>
</asp:TableRow>
</asp:Table>A hozzá tartozó JS kód, szintén az .aspx -ben:
<script language="javascript" type="text/javascript">
function megjelenc1() {
if (document.getElementById("<%=Lang2_1.ClientID%>").style.display == 'none') {
document.getElementById("<%=Lang2_1.ClientID%>").style.display = 'inherit';
document.getElementById("<%=Lang2_2.ClientID%>").style.display = 'inherit';
} else {
document.getElementById("<%=Lang2_1.ClientID%>").style.display = 'none';
document.getElementById("<%=Lang2_2.ClientID%>").style.display = 'none';
}
}Code behindból is meg lehet oldani a megjelenítés / eltüntetést, viszont ott problémáim voltak a validáláskor, ezért döntöttem a JS mellett.
Köszi előre is!
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Házimozi belépő szinten
- Mielőbb díjat rakatnának a görögök az olcsó csomagokra az EU-ban
- Óra topik
- Milyen TV-t vegyek?
- Kormányok / autós szimulátorok topikja
- Delta Force (2024)
- Hyundai, Kia topik
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Formula-1
- Milyen billentyűzetet vegyek?
- További aktív témák...
- TP-Link EAP Wifi AP-k (225, 245, 615)
- Mars Gaming ML-LCD240 2x ARGB 120mm FDB Fan LCD Display (Alkatrésznek) INGYEN FOXPOST
- CORSAIR K55 RGB PRO XT (Kartámasz nélküli) INGYEN FOXPOST
- Szép! Dell Latitude 7430 ÜTÉSÁLLÓ! Üzleti Profi Ultrabook 14" -60% i5-1245U 16/512 FHD IRIS Xe
- Philips 32E1N1800LA/00 4K monitor
- Csere-Beszámítás! AMD Ryzen 7 7700X Processzor!
- Samsung Galaxy A23 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! ASRock B85M Pro4 B85 chipset alaplap garanciával hibátlan működéssel
- Lenovo Legion Pro 5 16IRX9
- Lenovo Legion 5 Gaming. Az ár irányár, komoly érdeklődés esetén van lehetőség egyeztetésre
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest