Hi I'm trying to declar a static enum like so:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace Lds.CM.MyApp.Controllers
{
public class MenuBarsController : Controller
{
// Menu Bar enums
public static enum ProfileMenuBarTab { MainProfile, Edit, photoGallery }
public ActionResult cpTopMenuBar(string tabSelected)
{
...
" But I'm getting the following error: "The modifier 'static' is not valid for this item." I know it's something simple but I can't seem to see the problem. Much thanks!
You don't need to define it as static.When an enumerated type is compiled, the C# compiler turns each symbol into a constant field of the type . For example, the compiler treats the Color enumeration shown earlier as if you had written code similar to the following:
An enum is a type, not a value. The modifier
static
doesn't make much sense there.Enums are types, not variables. Therefore they are 'static' per definition, you dont need the keyword.
Take out
static
.Enums are types, not members; there is no concept of a static or non-static enum.
You may be trying to make a static field of your type, but that has nothing to do with the type declaration.
(Although you probably shouldn't be making a static field)
Also, you should not make
public
nested types.You are trying to make an enum declartion static, ie a field of the type
ProfileMenuBarTab
. To declare a class (or whatever) in a class, leave the static out.