Я сделал приложение в asp.net C# с использованием linq и оракул базы данных. Это приложение отлично работает на Widows 7 32-битный локальный хост. Но когда я развернул это приложение на сервере Windows 2008 r2.It дает следующий error.Guide мне, что следующий error.How Могу ли я проверить эту ошибку на сервере развертывания и как я могу решить эту ошибкуУказанный приказ недействителен. ошибка отображается в окне сервера 2008 r2
Specified cast is not valid. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Specified cast is not valid.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[InvalidCastException: Specified cast is not valid.]
System.Data.UnboxT`1.ValueField(Object value) +54
sis.<>c__DisplayClass55.b__0(DataRow r) +38
System.Linq.WhereEnumerableIterator`1.MoveNext() +156
System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +165
System.Linq.d__81`1.MoveNext() +472
System.Linq.Enumerable.Count(IEnumerable`1 source) +267
sis.regreport.Page_Load(Object sender, EventArgs e) +5015
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean
includeStagesAfterAsyncPoint) +3178
var vcolM = dt.AsEnumerable()
.Where(r => r.Field<string>("MAJ") == (string)vprglist
&& r.Field<string>("SPEC") == (string)vspecourse
&& r.Field<string>("L_ABR_CODE") == (string)genderEng[1]
&& r.Field<string>("reg") == (string)drRegion["reg"]
&& r.Field<decimal>("year") == syrcnt)
.Sum(r => Convert.ToInt32(r["strength"]));
Все LinQ как выше работает отлично в местном pc.But давая ошибку на сервере Windows 2008.Where syrcnt is int.
поставить точку останова на линии, и исследовать точно, какой тип ключа объекта есть. Когда вы это знаете, вы будете в лучшем положении, чтобы решить, какой тип броска вам нужен. –
Потому что в сервере deploymnet Как вставить точку останова –
Потому что на сервере разработки доступны только файлы DLL. Но в локальном приложении pc работает нормально –