-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathHome.razor
More file actions
89 lines (82 loc) · 4.44 KB
/
Home.razor
File metadata and controls
89 lines (82 loc) · 4.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
@page "/"
@using Syncfusion.Blazor
@using Syncfusion.Blazor.Data
@using Syncfusion.Blazor.Grids
@using System.Text.Json.Serialization;
<SfGrid TValue="OrderData"
Toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Update", "Search", "Cancel" })">
<SfDataManager Url="https://localhost:7078/graphql" GraphQLAdaptorOptions="@adaptorOptions" Adaptor="Adaptors.GraphQLAdaptor">
</SfDataManager>
<GridEditSettings AllowEditing="true" AllowDeleting="true" AllowAdding="true" Mode="EditMode.Normal"></GridEditSettings>
<GridColumns>
<GridColumn Field="OrderID" HeaderText="Order ID" IsPrimaryKey="true" Width="100" TextAlign="TextAlign.Right"></GridColumn>
<GridColumn Field="CustomerID" HeaderText="Customer Name" Width="100"></GridColumn>
<GridColumn Field="ShipCity" HeaderText="Ship City" Width="100"></GridColumn>
<GridColumn Field="ShipCountry" HeaderText="Ship Country" Width="120"></GridColumn>
</GridColumns>
</SfGrid>
@code {
private GraphQLAdaptorOptions adaptorOptions = new GraphQLAdaptorOptions
{
Query = @"query ordersData($dataManager: DataManagerRequestInput!) {
ordersData(dataManager: $dataManager) {
count
result {
orderID
customerID
shipCity
shipCountry
}
}
}",
Mutation = new GraphQLMutation
{
Insert = @"mutation create($record: OrderDataInput!, $index: Int!, $action: String!, $additionalParameters: Any) {
createOrder(record: $record, index: $index, action: $action, additionalParameters: $additionalParameters) {
orderID
customerID
shipCity
shipCountry
}
}",
Update = @"mutation update($record: OrderDataInput!, $action: String!, $primaryColumnName: String!, $primaryColumnValue: Int!, $additionalParameters: Any) {
updateOrder(record: $record, action: $action, primaryColumnName: $primaryColumnName, primaryColumnValue: $primaryColumnValue, additionalParameters: $additionalParameters) {
orderID
customerID
shipCity
shipCountry
}
}",
Delete = @"mutation delete($primaryColumnValue: Int!, $action: String!, $primaryColumnName: String!, $additionalParameters: Any) {
deleteOrder(primaryColumnValue: $primaryColumnValue, action: $action, primaryColumnName: $primaryColumnName, additionalParameters: $additionalParameters) {
orderID
customerID
shipCity
shipCountry
}
}",
Batch = @"
mutation batch($changed: [OrderDataInput!], $added: [OrderDataInput!], $deleted: [OrderDataInput!], $action: String!, $primaryColumnName: String!, $additionalParameters: Any, $dropIndex: Int) {
batchUpdate(changed: $changed, added: $added, deleted: $deleted, action: $action, primaryColumnName :$primaryColumnName, additionalParameters: $additionalParameters, dropIndex: $dropIndex) {
orderID
customerID
shipCity
shipCountry
}
}"
},
ResolverName = "ordersData"
};
public class OrderData
{
[JsonPropertyName("orderID")]
public int OrderID { get; set; }
[JsonPropertyName("customerID")]
public string? CustomerID { get; set; }
[JsonPropertyName("shipCity")]
public string? ShipCity { get; set; }
[JsonPropertyName("shipCountry")]
public string? ShipCountry { get; set; }
}
}