Это помогло мне получить ответ. Есть два файла php.ini
, которые, в моем случае, для wamp. Один находится под папкой php, а другой - в папке C:\wamp\bin\apache\Apachex.x.x\bin
. При подключении к SQL через функцию sqlsrv_connect
мы ссылаемся на файл php.ini
в папке apache
. Добавьте следующий файл (в соответствии с вашей версией) к этому файлу:
extension=c:/wamp/bin/php/php5.4.16/ext/php_sqlsrv_53_ts.dll
От строки:
YourEnum foo = (YourEnum) Enum.Parse(typeof(YourEnum), yourString);
// the foo.ToString().Contains(",") check is necessary for enumerations marked with an [Flags] attribute
if (!Enum.IsDefined(typeof(YourEnum), foo) && !foo.ToString().Contains(","))
throw new InvalidOperationException($"{yourString} is not an underlying value of the YourEnum enumeration.")
От интервала:
YourEnum foo = (YourEnum)yourInt;
Обновление:
От числа Вы можете также
YourEnum foo = (YourEnum)Enum.ToObject(typeof(YourEnum) , yourInt);
Просто бросок это:
MyEnum e = (MyEnum)3;
можно проверить, находится ли это в диапазоне с помощью Перечисление. IsDefined:
if (Enum.IsDefined(typeof(MyEnum), 3)) { ... }
Возьмите следующий пример:
int one = 1;
MyEnum e = (MyEnum)one;
Control.BeginInvoke
, (насколько я видел), единственное исключение.
– Richard
4 January 2011 в 08:33
Иногда у вас есть объект типа MyEnum
. Как
var MyEnumType = typeof(MyEnumType);
Затем:
Enum.ToObject(typeof(MyEnum), 3)
Вам просто нравится ниже:
int intToCast = 1;
TargetEnum f = (TargetEnum) intToCast ;
, Чтобы удостовериться, что Вы только бросаете правильные значения †‹вЂ‹ и что можно выдать исключение иначе:
int intToCast = 1;
if (Enum.IsDefined(typeof(TargetEnum), intToCast ))
{
TargetEnum target = (TargetEnum)intToCast ;
}
else
{
// Throw your exception.
}
Примечание, что использование IsDefined является дорогостоящим и еще больше, чем просто кастинг, таким образом, это зависит от Вашей реализации, чтобы решить использовать его или нет.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
namespace SamplePrograme
{
public class Program
{
public enum Suit : int
{
Spades = 0,
Hearts = 1,
Clubs = 2,
Diamonds = 3
}
public static void Main(string[] args)
{
//from string
Console.WriteLine((Suit) Enum.Parse(typeof(Suit), "Clubs"));
//from int
Console.WriteLine((Suit)1);
//From number you can also
Console.WriteLine((Suit)Enum.ToObject(typeof(Suit) ,1));
}
}
}