Solved

Obtain & check items in Generic list

Posted on 2006-11-28
11
206 Views
Last Modified: 2010-07-27
I'm new to generics, and trying to check to see if the list I get back has any values.  So far I've been unsuccessful in figuring out how to check this.  Here's how I defined my generic list in the page I'm working with:

    private List<sss.DataTier.Categories.Category> categoryList = new List<sss.DataTier.Categories.Category>();

...

    private void LoadCategoryList()
    {
        categoryList = sss.DataTier.Categories.CategoryContentItem.GetCategoryList(sss.DataTier.Categories.ContentItemType.Values.RecipeVersion, recipeVersionID);
    }

and finallly here's my If statement in which I'm trying to figure out how to check the list for categories:

    protected bool CheckRequiredCategory()
    {
        if (categoryList. < 1) <<Not sure what to do here
        {
            return false;
        }
        else
        {
            return true;
        }

Here's a print screen of values I get as options for the list: http://www.webfound.net/forum_posts/list_options.jpg

the type of records we're populating the list have column values such as the following:

            C.CategoryID,
            C.ParentCategoryID,
            C.Name,
            C.Description,
                                 ...
      

0
Comment
Question by:dba123
  • 6
  • 3
11 Comments
 
LVL 7

Accepted Solution

by:
mjmarlow earned 500 total points
ID: 18034137
List has a property "Count" that you can access to get the number of items in it.

if(categoryList.Count > 0)
{
  // categoryList has items in it
}
0
 
LVL 1

Author Comment

by:dba123
ID: 18034143
yea, I did try that but it didn't like it, gave me an error.  I will post that error tomorrow...thanks.
0
 
LVL 7

Expert Comment

by:mjmarlow
ID: 18034155
While I certainly love to get layups like these, I would be a schmo if i didn't point you to a great source of information.  In VS 2005, double click on the word List in your source file, then press F1 key.  A help file will launch with details about the "List" class.
0
 
LVL 1

Author Comment

by:dba123
ID: 18034265
cool, thanks!  I will also post that error tomorrow.  I had actually this when I tried it before I posted this thread:

if(categoryList.Count == 0)
{
  // categoryList has items in it
}
0
 
LVL 7

Expert Comment

by:mjmarlow
ID: 18036444
One reason that you would get a runtime error is if sss.DataTier.Categories.CategoryContentItem.GetCategoryList is returning null.  

One reason you would get a compile time error is if sss.DataTier.Categories.CategoryContentItem.GetCategoryList does not return List<sss.DataTier.Categories.Category>

0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 1

Author Comment

by:dba123
ID: 18037278
ok, so if it returns null, how can I tell it not to error out and to change the null into zero?
0
 
LVL 1

Author Comment

by:dba123
ID: 18037606
hmm, when I go to the properties of my .sln which is tied to all the projects I'm working with for this site, they're set to 'debug' in the configuration properties.  So not sure what else here...
0
 
LVL 1

Author Comment

by:dba123
ID: 18037665
also, comparing against 0 or < 1 doesnt' seem to work, it may be null.

doing this "seems" to work but I can't get my debug points to fire when using IIS mode

if (categoryList.Count == null)
0
 
LVL 1

Author Comment

by:dba123
ID: 18037782
ok, I asked a team member.  Here's what I had to do.   I had set it to the worker process, however it was set to try to debug SQL.  So I changed the following

1) Attach to worker process
2) Before clicking OK, changed the "Attach to" to Managed Code using the Select button.  It was set to "Automatically determine the type of code to debug" prior which is why it was trying to debug my SQL instead of my managed code
0
 
LVL 1

Expert Comment

by:jagadeeshbandlamudi
ID: 18098340
private List<sss.DataTier.Categories.Category> categoryList = new List<sss.DataTier.Categories.Category>();
sss.DataTier.Categories.Category oSdc = new sss.DataTier.Categories.Category();
  oSdc.CategoryID=000;
   oSdc.ParentCategoryID=000;
   oSdc.Name="XYZX";
    oSdc.Description="XYZX";
  categoryList.Add( oSdc);
protected bool CheckRequiredCategory()
    {
        if (oSDc.oSdc.ParentCategoryID< 1)
        {
            return false;
        }
        else
        {
            return true;
        }


Is this wat you are looking for
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

Bit flags and bit flag manipulation is perhaps one of the most underrated strategies in programming, likely because most programmers developing in high-level languages rely too much on the high-level features, and forget about the low-level ones. Th…
Introduction This article series is supposed to shed some light on the use of IDisposable and objects that inherit from it. In essence, a more apt title for this article would be: using (IDisposable) {}. I’m just not sure how many people would ge…
Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

746 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now