taiwokaffo Ответов: 1

Ошибка Guid.newguid() в моем проекте MVC


Всем привет,

у меня есть эта ошибка на
basket.BasketId =  Guid.NewGuid();
и я получаю следующее высказывание intellisense: "не могу неявно преобразовать систему типов.Guid to int"
корзина.BasketId имеет тип As int в моей модели, поэтому я хочу знать, как я могу исправить это в модели, чтобы она работала. Спасибо

Что я уже пробовал:

я пытался использовать tryparse и все такое, но это не работает, я также хочу знать, нужно ли мне преобразовать его в строку из модели.

F-ES Sitecore

Перейдите к модели и измените тип BasketId с int на Guid. Я не понимаю, в чем проблема?

1 Ответов

Рейтинг:
0

Kornfeld Eliyahu Peter

Вы не можете преобразовать GUID в целочисленный тип .NET...
GUID-это 128-битное число, а тип larges (встроенный) integer-64-битный...


taiwokaffo

мне действительно нужно знать, что у меня может быть Guid.Метод NewGuid имеет значения, хранящиеся в переменной.

Kornfeld Eliyahu Peter

Где вы хотите его хранить?

taiwokaffo

вот как выглядит этот код

частная корзина createNewBasket(HttpContextBase httpContext)
{

HttpCookie cookie = новый HttpCookie(BasketSessionName);
Корзина корзина = новая корзина();
корзина.дата = DateTime.Now;
корзина.BasketId = Идентификатор GUID.Метод newguid();

корзины.Вставка(корзина);
корзины.Совершать();

печенье.Ценность = корзина.Баскет.Метод toString();
печенье.Expires = DateTime.Now.AddDays(1);
свойство HttpContext.Ответ.Cookies.Добавить(cookie);

возвращение корзины;

}
а модель корзины имеет BasketId в виде int с {get;set;}

Kornfeld Eliyahu Peter

Как уже объяснялось, GUID не может быть преобразован в int (недостаточно места), поэтому вам придется изменить тип BasketID... Попробуй стринг... GUID имеет хороший метод ToString...