Solved

Need help on "Contains" method...

Posted on 2009-07-08
3
217 Views
Last Modified: 2013-11-05
Hi,

Can someone please tell me why I need the "System.Linq" for using the "Contains" method? Please see code below. My company wants me to get rid of the line "using System.Linq;", but everytime I remove the line, I'll get an error on the "Contains" method. Is there a different way to accomplish the same thing that the "Contains" method is doing without using Ling?

Thanks very much in advance.

using System.Linq;
 
string divCode = "TWPP";
string[] divCodeArr1 = { "TEB", "TWB", "VSGTB" };
string[] divCodeArr2 = { "TEPP", "TWPP", "VSGTPP" };
 
if (divCodeArr1.Contains(divCode))
{
    //do something here
}
else if (divCodeArr2.Contains(divCode))
{
    //do something here
}
else
{
    //do something here
}

Open in new window

0
Comment
Question by:WebAppDeveloper
3 Comments
 
LVL 15

Accepted Solution

by:
crisco96 earned 350 total points
ID: 24807424
You'll need to loop through each record in the array instead.  Here's a quick example
public void SomeFunction()
{
string divCode = "TWPP";
string[] divCodeArr1 = { "TEB", "TWB", "VSGTB" };
string[] divCodeArr2 = { "TEPP", "TWPP", "VSGTPP" };
 
if (Contains(divCode, divCodeArr1))
{
    //do something here
}
else if (divCodeArr2.Contains(divCode, divCodeArr2))
{
    //do something here
}
else
{
    //do something here
}
}
 
public bool Contains(string str, string[] arr)
{
   foreach(string val in arr)
   {
      if(str == val)
      {
         return true;
      }
   }
 
   return false;
}

Open in new window

0
 
LVL 41

Expert Comment

by:graye
ID: 24808249
To answer your specific question... the Contains() method is called an "extension method"...  although it's not normally considered a part of LINQ, it is a foundational element that is required for LINQ to function.
If you curious, take a look at the following:  http://en.wikipedia.org/wiki/Extension_method
0
 
LVL 7

Assisted Solution

by:Abu Hamdan
Abu Hamdan earned 150 total points
ID: 24808396
You could use arrayList instead of string arrays as follows:
System.Collections.ArrayList ss new System.Collections.ArrayList;
            ss.Add("item1"); 
            ss.Add("item2");
 
           if( ss.Contains("item1")
{
//whatever
} 

Open in new window

0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question