LINQ + GridView, Rzuca wyjątek |
LINQ + GridView, Rzuca wyjątek |
27.10.2011, 19:57:51
Post
#1
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 26.07.2008 Ostrzeżenie: (0%) |
Witam!
Robię wszytko jak na filmiku: http://www.youtube.com/watch?NR=1&v=zy4Y34brSC8 Próbowałem już różnych kombinacji i ciągle to samo a mianowicie rzuca taki wyjątek: Wiersz 20: jest na czerwono. Kod Błąd serwera w aplikacji '/'. Nie można rzutować obiektu typu 'System.String' na typ 'System.Byte[]'. Opis: Podczas wykonywania bieżącego żądania sieci Web wystąpił nieobsługiwany wyjątek. Aby uzyskać dodatkowe informacje o błędzie i miejscu jego występowania w kodzie, przejrzyj ślad stosu. Szczegóły wyjątku: System.InvalidCastException: Nie można rzutować obiektu typu 'System.String' na typ 'System.Byte[]'. Błąd źródła: Wiersz 18: Wiersz 19: GridView1.DataSource = names; Wiersz 20: GridView1.DataBind(); Wiersz 21: Wiersz 22: } Plik źródłowy: C:\Users\Hfastmet\documents\visual studio 2010\Projects\simplySQL\simplySQL\Site.Master.cs Wiersz: 20 Ślad stosu: [InvalidCastException: Nie można rzutować obiektu typu 'System.String' na typ 'System.Byte[]'.] Read_author(ObjectMaterializer`1 ) +375 System.Data.Linq.SqlClient.ObjectReader`2.MoveNext() +32 System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +327 System.Linq.Enumerable.ToList(IEnumerable`1 source) +58 System.Data.Linq.Provider.BindingList.Create(DataContext context, IEnumerable`1 sequence) +82 System.Data.Linq.DataQuery`1.GetNewBindingList() +40 System.Data.Linq.DataQuery`1.System.ComponentModel.IListSource.GetList() +15 System.Web.UI.DataSourceHelper.GetResolvedDataSource(Object dataSource, String dataMember) +54 System.Web.UI.WebControls.ReadOnlyDataSource.System.Web.UI.IDataSource.GetView(String viewName) +41 System.Web.UI.WebControls.DataBoundControl.ConnectToDataSourceView() +266 System.Web.UI.WebControls.DataBoundControl.GetData() +4 System.Web.UI.WebControls.DataBoundControl.PerformSelect() +59 System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +74 System.Web.UI.WebControls.GridView.DataBind() +4 simplySQL.SiteMaster.Page_Load(Object sender, EventArgs e) in C:\Users\Hfastmet\documents\visual studio 2010\Projects\simplySQL\simplySQL\Site.Master.cs:20 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35 System.Web.UI.Control.OnLoad(EventArgs e) +91 System.Web.UI.Control.LoadRecursive() +74 System.Web.UI.Control.LoadRecursive() +146 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2207 Informacje o wersji: Wersja Microsoft .NET Framework:4.0.30319; Wersja ASP.NET:4.0.30319.237 |
|
|
18.11.2011, 14:41:06
Post
#2
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 18.11.2011 Ostrzeżenie: (0%) |
A przypadkiem nie masz tego błędu przy update lub insercie?
Jak robisz update to string musisz zapisac w pojedynczym cudzyslowie a liczbe nie. I tutaj to co wyświetlasz masz zrobione w string i przy probie zapisu stringu do bazy gdzie kolumna jest tylu int wykrzacza sie. Musisz przy insecie wziąść pod uwagę kolumny innego tylku niz varchar, char. Nie można rzutować obiektu typu 'System.String' na typ 'System.Byte[]'. A w Twoim przypadku na Byte[]. |
|
|
Wersja Lo-Fi | Aktualny czas: 28.03.2024 - 17:57 |