---
title: "Fungerar \"self reference\" med Wilson O/R Mapper?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/159338-fungerar-self-reference-med-wilson-o-r-mapper"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "maqe"
published: "2007-04-16T18:53:27.000Z"
updated: "2007-04-17T19:11:26.000Z"
replies: 6
views: 432
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/159338-fungerar-self-reference-med-wilson-o-r-mapper"
---

# Fungerar "self reference" med Wilson O/R Mapper?

## #1 — maqe, 2007-04-16T18:53Z

Jag har ett object som har en collection av samma typ och i den skulle jag vilja ha alla barn, barnbarn etc. Går det att lösa med någon form av self reference eller nått i den stilen?

Permalänk: https://www.webforum.nu/p/159338

## #2 — emission, 2007-04-16T20:55Z

Visst kan du ha en collection av samma typ. Det är bara att mappa in. Har du stött på något problem?

Permalänk: https://www.webforum.nu/p/1959431

## #3 — maqe, 2007-04-17T06:56Z

Nu har jag löst det såhär...

```
<entity type="Category" table="Category" keyMember="_iD" keyType="Auto">
<attribute member="_iD" field="CatID" alias="ID" />
<attribute member="_name" field="CatName" alias="Time" />
<attribute member="_parentID" field="ParentID" alias="ParentID" />

<relation relationship="OneToMany" member="_categories" Type="Category" field="ParentID" lazyLoad="true" />
</entity>
```

och då är \_categories en IList och i den får jag alla barn. men barnbarn etc kanske inte går att lösa än då är det bättre att ha en metod som fixar det. Skulle behöva lite expertråd.

Permalänk: https://www.webforum.nu/p/1965984

## #4 — emission, 2007-04-17T08:49Z

Du vill alltså kunna pocka ut all "avkomma" i en enda collection? Visst, det går att åstadkomma, med en nodepath-trigger i databasen, som i varje entitet lagrar "sökvägen". Det ska dock endast användas om det verkligen behövs. Den enklaste och mest logiska lösningen är att du gör en GetAll-metod som rekursivt hämtar det som behövs. Kom också ihåg att den collection som returneras bör vara readonly, eftersom det inte är rimligt att något läggs till i den (använd gärna en array).

Permalänk: https://www.webforum.nu/p/1966003

## #5 — maqe, 2007-04-17T16:32Z

Tack för tipsen emission, jag kommer köra på en GetAll metod istället. Passar på med en fråga till som rör samma sak.
Jag skulle vilja ha ett objektets förälder och det borde med gå att lösa med någon form av relationsmappning. Jag har försökt använda nedanstående relation men får det inte att fungera.

```
<relation relationship="ManyToOne" member="_parentCat" Type="Category" field="CatID" lazyLoad="true" />
```

Permalänk: https://www.webforum.nu/p/1966115

## #6 — emission, 2007-04-17T17:32Z

field="ParentID"

Permalänk: https://www.webforum.nu/p/1966128

## #7 — maqe, 2007-04-17T19:11Z

> **emission skrev:**
>
> field="ParentID"

Hm den var ju solklar :D ... tack för hjälpen.

Permalänk: https://www.webforum.nu/p/1966140

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/159338-fungerar-self-reference-med-wilson-o-r-mapper
