or
{"Message":"Invalid web service call, missing value for parameter: \u0027events\u0027.","StackTrace":" at System.Web.Script.Services.WebServiceMethodData.CallMethod(Object target, IDictionary`2 parameters)\r\n at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary`2 parameters)\r\n at System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context, WebServiceMethodData methodData, IDictionary`2 rawParams)\r\n at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.InvalidOperationException"}
{"eventid":null,"contextid":null,"eventname":"sd","eventdescription":"sd","eventprice":3}
{"Message":"Cannot convert object of type \u0027EventReady.kdEvent\u0027 to type \u0027System.Collections.Generic.IDictionary`2[System.String,System.Object]\u0027","StackTrace":" at System.Web.Script.Serialization.ObjectConverter.ConvertObjectToTypeInternal(Object o, Type type, JavaScriptSerializer serializer, Boolean throwOnError, Object& convertedObject)\r\n at System.Web.Script.Serialization.ObjectConverter.ConvertObjectToTypeMain(Object o, Type type, JavaScriptSerializer serializer, Boolean throwOnError, Object& convertedObject)\r\n at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize(JavaScriptSerializer serializer, String input, Type type, Int32 depthLimit)\r\n at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize[T](String input)\r\n at System.Web.Script.Services.RestHandler.GetRawParamsFromPostRequest(HttpContext context, JavaScriptSerializer serializer)\r\n at System.Web.Script.Services.RestHandler.GetRawParams(WebServiceMethodData methodData, HttpContext context)\r\n at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.InvalidOperationException"}
{"__type":"EventReady.kdEvent","contextid":56,"eventid":2,"eventname":"Evento Teste","eventdescription":"Testedsds","eventprice":3}
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="Events.ascx.vb" Inherits="EventReady.Events.Events" %>
<%@ Register TagPrefix="telerik" Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" %>
<%@ Register TagPrefix="sas" Assembly="CoreReady.Web.UI" Namespace="CoreReady.Web.UI" %>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanel1"
runat
=
"server"
>
<
asp:Label
ID
=
"PageBlockID"
runat
=
"server"
Visible
=
"false"
></
asp:Label
>
<
asp:Label
ID
=
"lblEventID"
runat
=
"server"
Visible
=
"false"
></
asp:Label
>
<
asp:Panel
ID
=
"pnlList"
runat
=
"server"
>
<
div
id
=
"grid"
>
</
div
>
<
script
>
<!--my script-->
</
script
>
</
asp:Panel
>
</
telerik:RadAjaxPanel
>
<script>
Sys.Application.add_load(LoadGrid);
function
LoadGrid() {
$(
"#grid"
).kendoGrid({
dataSource: {
transport: {
read: {
url:
"_portal/_widgets/eventready/events/wsev.asmx/getallevents"
,
contentType:
"application/json; charset=utf-8"
,
type:
"POST"
,
data: { ctxid:
"<asp:literal id='lblContextID' runat='server' />"
}
},
create: {
url:
"_portal/_widgets/eventready/events/wsev.asmx/createevent"
,
contentType:
"application/json; charset=utf-8"
,
type:
"POST"
},
update: {
url:
"_portal/_widgets/eventready/events/wsev.asmx/updateevent"
,
contentType:
"application/json; charset=utf-8"
,
type:
"POST"
},
destroy: {
url:
"_portal/_widgets/eventready/events/wsev.asmx/destroyevent"
,
contentType:
"application/json; charset=utf-8"
,
type:
"POST"
},
parameterMap:
function
(options, operation) {
if
(operation !==
"read"
&& options.models) {
return
{ events: kendo.stringify(options.models) };
}
else
{
return
kendo.stringify(options);
}
}
},
schema: {
data:
"d"
,
model: {
id:
"eventid"
,
fields: {
contextid: { editable:
false
, nullable:
true
},
eventid: { editable:
false
, nullable:
true
},
eventname: { type:
"string"
},
eventdescription: { type:
"string"
},
eventprice: { type:
"number"
}
}
}
}
},
height: 400,
sortable:
true
,
pageable:
true
,
toolbar: [
"create"
],
columns: [
{
field:
"eventname"
, title:
"Evento"
, width:
"200px"
},
{
field:
"eventdescription"
, title:
"Descrição"
, width:
"200px"
},
{
field:
"eventprice"
, title:
"Preço"
, format:
"{0:c}"
, width:
"200px"
},
{ command: [
"edit"
,
"destroy"
], title:
" "
, width:
"210px"
}
],
editable:
"inline"
});
};
</script>
Public
Class
kdEvent
Public
Sub
New
()
End
Sub
Public
Sub
New
(contextid
As
Integer
, eventid
As
Integer
, eventname
As
String
, eventdescription
As
String
, eventprice
As
Double
)
Me
.contextid = contextid
Me
.eventid = eventid
Me
.eventname = eventname
Me
.eventdescription = eventdescription
Me
.eventprice = eventprice
End
Sub
Private
_contextid
As
Integer
Public
Property
contextid
As
Integer
Get
Return
_contextid
End
Get
Set
(
ByVal
value
As
Integer
)
_contextid = value
End
Set
End
Property
Private
_eventid
As
Integer
Public
Property
eventid
As
Integer
Get
Return
_eventid
End
Get
Set
(value
As
Integer
)
_eventid = value
End
Set
End
Property
Private
_eventname
As
String
Public
Property
eventname
As
String
Get
Return
_eventname
End
Get
Set
(value
As
String
)
_eventname = value
End
Set
End
Property
Private
_eventdescription
As
String
Public
Property
eventdescription
As
String
Get
Return
_eventdescription
End
Get
Set
(value
As
String
)
_eventdescription = value
End
Set
End
Property
Private
_eventprice
As
Double
Public
Property
eventprice
As
Double
Get
Return
_eventprice
End
Get
Set
(value
As
Double
)
_eventprice = value
End
Set
End
Property
End
Class
Imports
System.Web.Services
Imports
System.Web.Services.Protocols
Imports
System.ComponentModel
Imports
xPortalReady
' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
<System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(
Namespace
:=
"http://tempuri.org/"
)> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(
False
)> _
Public
Class
wsev
Inherits
System.Web.Services.WebService
<WebMethod()> _
Public
Function
getallevents(
ByVal
ctxid
As
Integer
)
As
List(Of kdEvent)
Dim
dbEvent
As
New
CoreReadyDAL.EventReady.EventReadyDataContext(xPortalReady.BasePage.getAppConnectionString(5, ctxid))
Dim
listEvents
As
New
List(Of kdEvent)()
Dim
allEvent = (From ev
In
dbEvent.Events _
Where ev.Context_ID = ctxid _
Select
ev)
If
Not
allEvent
Is
Nothing
AndAlso
allEvent.Count > 0
Then
For
Each
ev
In
allEvent
listEvents.Add(
New
kdEvent(ctxid, ev.Event_ID, ev.Event_Name, ev.Event_Description, ev.Event_Price))
Next
End
If
Return
listEvents.ToList
End
Function
<WebMethod()> _
Public
Function
createevent(
ByVal
events
As
List(Of kdEvent))
As
List(Of kdEvent)
Dim
dbEvent
As
New
CoreReadyDAL.EventReady.EventReadyDataContext(xPortalReady.BasePage.getAppConnectionString(5, events.Take(1).SingleOrDefault.contextid))
Dim
listEvents
As
New
List(Of kdEvent)()
For
Each
newEv
In
events
Dim
newEvent
As
New
CoreReadyDAL.EventReady.
Event
newEvent.Context_ID = newEv.contextid
newEvent.Event_Name = newEv.eventname
newEvent.Event_Description = newEv.eventdescription
newEvent.Event_Price = newEv.eventprice
dbEvent.Events.InsertOnSubmit(newEvent)
listEvents.Add(newEv)
Next
dbEvent.SubmitChanges()
Return
listEvents.ToList
End
Function
<WebMethod()> _
Public
Sub
updateevent(
ByVal
events
As
List(Of kdEvent))
Dim
dbEvent
As
New
CoreReadyDAL.EventReady.EventReadyDataContext(xPortalReady.BasePage.getAppConnectionString(5, events.Take(1).SingleOrDefault.contextid))
Dim
listEvents
As
New
List(Of kdEvent)()
For
Each
newEv
In
events
Dim
currentEvent = (From e
In
dbEvent.Events _
Where e.Event_ID = newEv.eventid _
Select
e).SingleOrDefault
If
Not
currentEvent
Is
Nothing
Then
currentEvent.Event_Name = newEv.eventname
currentEvent.Event_Description = newEv.eventdescription
currentEvent.Event_Price = newEv.eventprice
End
If
Next
dbEvent.SubmitChanges()
End
Sub
<WebMethod()> _
Public
Sub
destroyevent(
ByVal
events
As
List(Of kdEvent))
Dim
dbEvent
As
New
CoreReadyDAL.EventReady.EventReadyDataContext(xPortalReady.BasePage.getAppConnectionString(5, events.Take(1).SingleOrDefault.contextid))
Dim
listEvents
As
New
List(Of kdEvent)()
For
Each
ev
In
events
Dim
currentEvent = (From e
In
dbEvent.Events _
Where e.Event_ID = ev.eventid _
Select
e).SingleOrDefault
If
Not
currentEvent
Is
Nothing
Then
dbEvent.Events.DeleteOnSubmit(currentEvent)
End
If
Next
dbEvent.SubmitChanges()
End
Sub
End
Class
var gridResult = $("#grid").kendoGrid({
dataSource: {
type: "aspnetmvc-ajax",
// type: "json",
transport: {
read: "Home/Products_Read"
},
schema: {
data: "data",
total: "total",
model: {
id: "products",
fields: {
Code: { editable: false },
Number: { editable: false },
Name: { editable: false },
Supplier: { editable: false },
Price: { editable: false, type: "number" },
Quantity: { editable: true, type: "number" },
Total: { editable: true, type: "number" }
}
}
},
pageSize: 20,
serverPaging: true,
serverFiltering: true,
serverSorting: true
},
selectable: "row",
sortable: true,
pageable: true,
columns: [
{ field: "Number", title: "Number", width: "100px" },
{ field: "Name", title: "Name" },
{ field: "Supplier", title: "Supplier", width: "100px" },
{ field: "Price", title: "Price", width: "100px", format: "{0:n}" },
{ field: "Quantity", title: "Quantity", width: "100px", template: '<
input
data-role
=
"numerictextbox"
data-bind
=
"value: Quantity"
data-max-value
=
"100"
class
=
"quantityTextArea"
/>' },
{ field: "Total", title: "Total", width: "100px", template: "#= Price #" }
],
rowTemplate:
'<
tr
data-uid
=
"#= Code #"
>' +
'<
td
><
span
>${Number}</
span
></
td
>' +
'<
td
><
span
>${Name}</
span
></
td
>' +
'<
td
><
span
>${Supplier}</
span
></
td
>' +
'<
td
><
span
>${Price}</
span
></
td
>' +
'<
td
><
input
data-role
=
"numerictextbox"
data-bind
=
"value: Quantity"
data-max-value
=
"100"
class
=
"quantityTextArea"
/></
td
>' +
'<
td
>#=Price*Quantity#</
td
>' +
'</
tr
>'
});
app =
new
kendo.mobile.Application($(document.body), {
initial:
"rootView"
,
transition:
'slide'
,
loading:
'<h1 class="loading-message">Loading...</h1>'
,
platform:
null
});
<
div
data-role
=
"view"
id
=
"showpostlayout"
data-layout
=
"defaultlayout"
data-reload
=
"true"
>
<
div
data-role
=
"header"
>
<
div
data-role
=
"navbar"
><
a
data-click
=
"closePost"
data-role
=
"button"
data-align
=
"right"
>Close</
a
> </
div
>
</
div
>
<
div
id
=
"mypost"
>
</
div
>
</
div
>
<
script
>
function closePost() {
$("#showpostlayout").kendoMobileModalView("close");
}
</
script
>
$grid = $("<
div
></
div
>");
$grid.filter(
'div'
).css(
"height"
,
'300px'
)
$grid.kendoGrid({});
ConstV7.prototype.resizeGrid =
function
(grid) {
var
gridElement = grid,
dataArea = gridElement.find(
".k-grid-content"
),
gridHeight = gridElement.innerHeight(),
otherElements = gridElement.children().not(
".k-grid-content"
),
otherElementsHeight = 0;
otherElements.each(
function
() {
otherElementsHeight += $(
this
).outerHeight();
});
dataArea.height(gridHeight - otherElementsHeight);
}