Jag ska implementera designmönstret database broker, problemet är att jag inte har så stor kunskap om implementeringen av sådant. Det låter som att du ska skriva klasser som ska implementera interfacet IMapper? Var inte riktigt så jag menade men jag har löst det ändå. Men tack ändå! =) Hej Database broker
Jag har en teoretisk beskrivning och umldiagram över det.
Det första jag ska göra en är en fasad som kopplas till ett interface, IMapper som implementeras av mapperklasser som purchaseMapper som sätter ihop ett purchaseobjekt.
Så första frågan är hur jag ska skriva koden i fasaden som vidarbefordrar anropen till rätt IMapperklass?
Ska man ta in ett klassnamn som argument till fasaden och ha någon form av hashtabell där man kan skicka in klassnamnet och få tillbaka ett objekt?
Tacksam för hjälp!Sv: Database broker
Du behöver ingen HashTable till det
edit.....: ok detta var i C# forument, =)
men om du använde VB som jag kan bäst, så skriver du överst i klassen så här..
<code>
Public Class MinMapper
Implements IMapper
Public Function Hello() As String Implements IMapper.HelloMethod()
Return "Tjenare.."
End Function
End Class
</code>
HelloMethod() är en metod som finns beskriven i interfacet IMapper. Funkar alltså inget vidare som C# kåd - sorry, men principen är densamma!Sv: Database broker
Dock har jag ett annat problem som är relaterat till detta.
Jag ska använda en .config-fil för att lagra klasserna i.
Jag har nu suttit och försökt hämta ut datat ur den men jag får det inte att fungera.
Nu använder jag bara testdata för att försöka få ut nåt.
.config-filen:
[CODE]
<configuration>
<configSections>
<sectionGroup name="myGroup">
<sectionGroup name="nestedGroup">
<section name="mySection" type=
"System.Configuration.NameValueSectionHandler,System"/>
</sectionGroup>
</sectionGroup>
</configSections>
<myGroup>
<nestedGroup>
<mySection>
<add key="key_one" value="1"/>
<add key="key_two" value="2"/>
</mySection>
</nestedGroup>
</myGroup>
</configuration>
[/CODE]
Koden som ska parsa datat:
[CODE]
NameValueCollection config = (NameValueCollection)
ConfigurationSettings.GetConfig("myGroup/nestedGroup/mySection");
Console.WriteLine(config["key_one"].ToString());
[/CODE]
Jag får NullReferenceException på detta, någon som vet hur det ska vara?Sv: Database broker
Detta låter väldigt mycket som en O/R-mapper och då skulle jag göra precis som du beskriver.
I fasaden,
<code>
getObject( Type typeOfObject, object Id)
return myMappers[typeOfObject].Get(id)
</code>