---
title: "Få ett värde engång men som finns flera gånger"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/80660-få-ett-värde-engång-men-som-finns-flera-gånger"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "wwwstekaren"
published: "2003-06-26T12:32:43.000Z"
updated: "2003-06-30T07:09:58.000Z"
replies: 35
views: 792
page: 1
pages: 2
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/80660-få-ett-värde-engång-men-som-finns-flera-gånger"
---

# Få ett värde engång men som finns flera gånger

_Sida 1 av 2._

## #1 — wwwstekaren, 2003-06-26T12:32Z

jag har en lista som ska skrivas ut. Den innehåller olika personer som är ansvariga för olika kunder. Nu när jag skriver ut så kan det förekomma att Nisse Nilsson skrivs ut två gånger hur gör jag så att en person bara skrivs ut en gång. Denna koden har jag idag för att skriva ut detta i en tabell

```
private void Page_Load(object sender, System.EventArgs e)
		{
			DataSet ds = LoadWebs();
		
			DataView custDV = new DataView(ds.Tables[0], 
					null,
					"Responsible",
					DataViewRowState.CurrentRows);
		
			
			ContactBox.DataSource = ResponsibleBox.DataSource = custDV; 
			ResponsibleBox.DataValueField = "Responsible";
			ContactBox.DataValueField = "Contact";
			ResponsibleBox.DataBind(); ContactBox.DataBind();
		}
```

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

## #2 — renholm, 2003-06-26T20:09Z

Troligen kommer du behöva loopa igenom din dataview och sedan med hjälp av Items.Conatains avgöra om värdet redan finns.

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

## #3 — SPiN, 2003-06-26T20:11Z

Om du inte hämtar informationen från en databas, då kan du sortera ut redan i SQL-frågan med nyckelordet DISTINCT.

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

## #4 — wwwstekaren, 2003-06-27T07:35Z

Hur då:)? Visa mig lite kod

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

## #5 — SPiN, 2003-06-27T07:49Z

```
SELECT DISTINCT( fld ) FROM tbl
```

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

## #6 — wwwstekaren, 2003-06-27T07:55Z

Men förstår du vad jag vill ha ut, jag tror man bara kan loopa igenom det så här typ:)

```
i pseudokod: 

föregående person = "";

for i=0 to sista posten
{
  if (föregående person!=nuvarande post)
    visa i listan;
  föregående person = nuvarande post;
}
```

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

## #7 — Gladh, 2003-06-27T08:34Z

Om du hämtar din data från en databas, med SELECT så kan du använda dig av DISTINCT för att få ut vad du vill ha.

Om du med SELECT name FROM table får följande resultat.

Nisse
Nisse
Erik
Nisse
Johan
Erik

Så får du med SELECT DISTINCT name FROM table

Nisse
Erik
Johan

Om du gör som du vill i din pseudokod, så måste namnen ligga i rätt ordning, du skulle inte få ut vad du vill om du hade haft en lista som min översta, du hade fått ut.

Nisse
Erik
Nisse
Johan
Erik

\- M

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

## #8 — wwwstekaren, 2003-06-27T08:35Z

Jag hämtar från en xml fil:)

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

## #9 — renholm, 2003-06-27T09:25Z

Här har du ett exempel med en DropDownList

```
private void Page_Load(object sender, System.EventArgs e)
{
DataSet ds = LoadWebs();

foreach(DataRow row in ds.Tables[0].Rows)
{
    ListItem item = new ListItem(row["test"], row["value"]);
    if (!ddl.Item.Contains(item))
    {
        ddl.Items.Add(item);
    }
}
```

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

## #10 — wwwstekaren, 2003-06-27T09:31Z

ddl vad är det?

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

## #11 — renholm, 2003-06-27T09:33Z

ddl = DropDownList som jag skrev ovan.

> Denna koden har jag idag för att skriva ut detta i en tabell

Vad försökre du binda detta till egentligen?

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

## #12 — wwwstekaren, 2003-06-27T09:40Z

detta funkar inte varför?

```
private void Page_Load(object sender, System.EventArgs e)
		{
			DataSet ds = LoadWebs();

			foreach(DataRow row in ds.Tables[0].Rows)
			{		
				DataView custDV = new DataView(ds.Tables[0], 
					null,"Responsible",DataViewRowState.CurrentRows);
				if (!ContactBox.Items.Contains(custDV))
				{
					ContactBox.Items.Add(custDV);

					ContactBox.DataSource = ResponsibleBox.DataSource = custDV; 
					ResponsibleBox.DataValueField = "Responsible";
					ContactBox.DataValueField = "Contact";
					ResponsibleBox.DataBind(); ContactBox.DataBind();
				}
			}

		}
```

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

## #13 — wwwstekaren, 2003-06-27T09:41Z

det gör jag med min också

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

## #14 — renholm, 2003-06-27T10:02Z

anledningen till att det inte funkar är att du har lagt in massa annan kod, är det två boxar du ska binda?

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

## #15 — wwwstekaren, 2003-06-27T11:07Z

yes, jag skickar med min aspx kod

```
<%@ Page language="c#" Codebehind="rapport.aspx.cs" AutoEventWireup="false" Inherits="xml_dropdownlist.rapport" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
	<HEAD>
		<title>rapport</title>
		<meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
		<meta content="C#" name="CODE_LANGUAGE">
		<meta content="JavaScript" name="vs_defaultClientScript">
		<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
		<style>BODY { FONT-SIZE: 10px; FONT-FAMILY: verdana }
	TD { FONT-SIZE: 10px; FONT-FAMILY: verdana }
	DIV { FONT-SIZE: 10px; FONT-FAMILY: verdana }
	SELECT { FONT-SIZE: 10px; FONT-FAMILY: verdana }
	INPUT { FONT-SIZE: 10px; FONT-FAMILY: verdana }
	.headlineS { FONT-WEIGHT: bold; FONT-SIZE: 18px; PADDING-BOTTOM: 8px; COLOR: #888888 }
	.name { }
	.background { BACKGROUND-IMAGE: url(bak.gif); BACKGROUND-REPEAT: no-repeat }
	.button { }
		</style>
	</HEAD>
	<body bgColor="#ffffff">
		<form id="rapport" method="post" runat="server">
			<table>
				<tr>
					<td><asp:checkboxlist id="ResponsibleBox" Runat="server" EnableViewState="True"></asp:checkboxlist></td>
					<td>&nbsp;</td>
					<td><asp:checkboxlist id="ContactBox" Runat="server" EnableViewState="True"></asp:checkboxlist></td>
				</tr>
				<tr>
					<td align="right" colSpan="3"><asp:button id="ResultButton" Runat="server" Text="Generera epostadresser"></asp:button></td>
				</tr>
				<tr>
					<td align="middle" colSpan="3"><asp:textbox id="Emails" Runat="server" Rows="10" Columns="80" TextMode="MultiLine"></asp:textbox></td>
				</tr>
			</table>
		</form>
	</body>
</HTML>
```

vill nu att de bara skriver ut ett namn en gång. Just nu skrivs ett namn som finnas två gånger i xml filen ut flera gånger.

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

## #16 — renholm, 2003-06-27T11:13Z

Ok, då blir det så här:

```
DataSet ds = LoadWebs();

foreach(DataRow row in ds.Tables[0].Rows)
{
    ListItem item = new ListItem(row["Responsible"], row["Responsible"]);
    if (!ResponsibleBox.Item.Contains(item))
    {
        ResponsibleBox.Items.Add(item);
        ContactBox.Items.Add(item);
    }
}
```

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

## #17 — wwwstekaren, 2003-06-27T11:16Z

Tackar nu funkar det tack så jätte mycket för hjälpen:)

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

## #18 — wwwstekaren, 2003-06-27T11:41Z

En liten sak bara nu skrivs Responsible ut i båda tabellerna, den andra ska skriva ut en del andra saker, hur gör jag lättast detta. Uppskattar din hjälp:) Är nybörjare på detta

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

## #19 — renholm, 2003-06-27T11:59Z

Så här möjligen

```
DataSet ds = LoadWebs();

foreach(DataRow row in ds.Tables[0].Rows)
{
    ListItem item = new ListItem(row["Responsible"], row["Responsible"]);
    if (!ResponsibleBox.Item.Contains(item))
    {
        ResponsibleBox.Items.Add(item);
    }

    item = new ListItem(row["Contact"], row["Contact"]);
    if (!ContactBox.Item.Contains(item))
    {
        ContactBox.Items.Add(item);
    }
}
```

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

## #20 — wwwstekaren, 2003-06-27T12:07Z

Fick ändra om lite i koden nu funkar det:) Du ska ha ett stort tack:)

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/80660-få-ett-värde-engång-men-som-finns-flera-gånger  
Nästa sida: https://www.webforum.nu/amne/dotnet/80660-få-ett-värde-engång-men-som-finns-flera-gånger/page2.md
