Hvordan til å filtrere og kombinere 2 datasett i C #

stemmer
8

Jeg bygger en nettside for å vise en kunde hvilken programvare de har kjøpt, og for å gi dem en link til nedlasting nevnte programvaren. Dessverre, data om hva som ble kjøpt og informasjonen nedlasting er i separate databaser så jeg kan ikke bare ta vare på den med tiltrer i en SQL-spørring.

Den vanlige elementet er SKU. Jeg skal trekke en liste over SKUene fra kundens kjøp databasen og på nedlastings bordet er et komma avgrenset liste over SKUene forbundet med at nedlasting. Min intensjon, i øyeblikket, er å lage fra denne datatable å fylle en GridView.

Noen forslag på hvordan du gjør dette effektivt ville være verdsatt. Hvis det hjelper, kan jeg ganske lett trekke tilbake dataene som en DataSeteller DataReader, hvis enten en ville være bedre for dette formålet.

Publisert på 05/08/2008 klokken 13:17
kilden bruker
På andre språk...                            


3 svar

stemmer
2

Hvorfor ikke opprette et domene objekt basert tilnærming til dette problemet:

public class CustomerDownloadInfo
{
    private string sku;
    private readonly ICustomer customer;

    public CustomerDownloadInfo(ICustomer Customer){
        customer = Customer;
    }

    public void AttachSku(string Sku){
        sku = Sku;
    }

    public string Sku{
        get { return sku; }
    }

    public string Link{
        get{    
            // etc... etc...          
        }
    }
}

Det er en million varianter av denne, men når du samle denne informasjonen, ville ikke det være lettere å presentere?

Svarte 05/08/2008 kl. 14:06
kilden bruker

stemmer
2

Så lenge de to databasene er på samme fysiske server (forutsatt MSSQL) og brukernavn / passord som brukes i tilkoblingsstrengen har rettigheter til både DBS, så du bør være i stand til å utføre en sammenføyning over de to databasene. Eksempel:

select p.Date,
       p.Amount,
       d.SoftwareName,
       d.DownloadLink
from   PurchaseDB.dbo.Purchases as p
join   ProductDB.dbo.Products as d on d.sku = p.sku
where  p.UserID = 12345
Svarte 05/08/2008 kl. 13:48
kilden bruker

stemmer
0

Jeg tenker på toppen av hodet mitt her. Hvis du legger både som Data Tabeller i samme datasett, og definerer en relasjon mellom de to over SKU, og deretter kjøre en spørring på datasett som gir ønsket resultat.

Svarte 05/08/2008 kl. 13:24
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more