06. februar 2007 - 19:49
Der er
17 kommentarer og 1 løsning
Underlig fejl, men måske jeg overser noget ?
Hejsa, Jeg har noget kode der generere følgende fejl : CS0117: 'MemberShip.UsersBLL.UsersBLL_Interface' does not contain a definition for 'GetAllLoginInfo' Som opstår jeg laver følgende i min page_load : ListUsers.DataSource = objUserBLL.GetAllLoginInfo(Convert.ToInt32(Request.QueryString["id"])); ListUsers.DataBind(); Dette skulle betyde at jeg i mit interface i business klasse ikke har metoden 'GetAllLoginInfo', men mit interface ser således ud : public interface UsersBLL_Interface { int CreateLoginInfo(UsersInfo.UsersLoginProperty objInfo); ArrayList GetLoginInfo(int Id); ArrayList GetAllLoginInfo(int Id); } Og selve metoden er også til stede i mit business lag : public ArrayList GetAllLoginInfo(int Id) { ArrayList Source = (ArrayList)HttpContext.Current.Cache["AllLoginInfo" + Id]; if (Source == null) { Source = objDAL.GetAllLoginInfo(new UsersInfo.UsersLoginProperty(Id, "", "", "", "", "", false, 0, false, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, 0, 0, 0)); HttpContext.Current.Cache.Insert("AllLoginInfo" + Id, Source, null, DateTime.Now.AddMinutes(15), TimeSpan.Zero); } else { HttpContext.Current.Cache["AllLoginInfo" + Id] = Source; } return Source; } Så jeg er lidt uforstående for ovenstående fejl ? /Websam
Annonceindlæg fra Cognizant
06. februar 2007 - 19:53
#1
du er sikker på din request.querystring ikke er tom? og i selve businesslaget siger du metoden er der, men du skal måske sikre dig at paranteser passer.. at metoden er placeret rigtigt i klassen
06. februar 2007 - 20:00
#2
Det er når jeg recompiler jeg får fejlen så selve request.querystring skulle ikke have noget at sige i denne forbindelse, men jeg tjekker lige det andat af en gang til ;o) /Websam
06. februar 2007 - 20:03
#3
Opsætningen i mit business lag er som følger : factory klasse { } interface { } internal klasse { Her er alle mine metoder så placeret } og umiddelbart ser det hele ud til at være placeret rigtigt. /Websam
06. februar 2007 - 20:03
#4
jeg prøver lige at tjekke noget.. for fejlen er vidst i selve interfacet
06. februar 2007 - 20:05
#5
skriv public foran metoderne i interfacet
06. februar 2007 - 20:07
#6
og hvis den stadig brokker sig der så lad dem forblive public og prøv at erklære din metode i businesslaget via. protected override ArrayList GetAllLoginInfo(int Id) { }
06. februar 2007 - 20:08
#7
og du kan også lave dit interface sådan her.. så burde mine andre forslag virke public abstract class UsersBLL_Interface { int CreateLoginInfo(UsersInfo.UsersLoginProperty objInfo); ArrayList GetLoginInfo(int Id); ArrayList GetAllLoginInfo(int Id); }
06. februar 2007 - 20:17
#8
1. public er ikke tilladt i et interface. 2. protected override gav ingen forskel. 3. public abstract class heller ingen hjælp. Det der er så underligt er at de 2 andre metoder i business laget virker helt uden problemer ?!?
06. februar 2007 - 20:19
#9
jeg har på fornemmelsen af at det er en dum lille fejl:) hvis de andre virker:)
06. februar 2007 - 20:20
#10
Og nøjes jeg med at lave en rebuild på mit library med klasse filer så melder den ingen fejl på hverken info klasser, business klasser el. data klasser, det er først når jeg laver rebuild af hele solution at den brokker sig ?!?
06. februar 2007 - 20:21
#11
Ja det er jeg ikke i tvivl om men har fame stirret mig blind på det nu tror jeg *GG*
06. februar 2007 - 20:24
#12
det er ikke fordi noget at builded i release mode og dit interface kun i debug? jeg kan ikke selv se det.. jeg har haft nogle problemer som ligner lidt men det hjalp at rebuilde hvert enkelt projekt hver for sig og til sidst rebuilde hele solution. virker bare ikke med dig
06. februar 2007 - 20:24
#13
Og når jeg skriver objUserBLL. foreslår den selv at jeg kan vælge GetAllLoginInfo hvilket jo klart indikere at metoden findes i business laget
06. februar 2007 - 20:26
#14
Det har så lige prøvet og når jeg så forsøger at builde website kommer den med den irriterende fejl :o((
06. februar 2007 - 20:33
#15
Nu har jeg så lige prøvet at rebuilde i release og så ser det ud til at virke underligt, men jeg håber det var det der skulle til. /Websam
06. februar 2007 - 20:35
#16
så kan det tyde på du kan få det til at virke i debug mode også ved at slette debug mappen
17. juni 2007 - 08:58
#17
smid et svar kalp ;o)
17. juni 2007 - 11:18
#18
:-)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.