ASP.NET CoreとgRPCとDapperを使って実装したTodoAPIです。
$ docker-compose up -d db
CreateDatabase.sql
を実行CreateTable.sql
を実行
この部分も自動化したい
$ docker-compose build; docker-compose up -d db; docker-compose up -d grpc proxy;
$ npm install -g grpcc
$ grpcc --proto ./Proto/todo.proto --address 127.0.0.1:5000 -i
TodoService@127.0.0.1:5000> client.getTodoItems({},pr)
TodoService@127.0.0.1:5000>
{
"todos": [
{
"Id": "983292d1bc1745a9b6b636f239e5596a",
"Name": "Item1",
"IsComplete": false
}
]
}
TodoService@127.0.0.1:5000> client.getTodoItem({Id:"983292d1bc1745a9b6b636f239e5596a"},pr)
TodoService@127.0.0.1:5000>
{
"todo": {
"Id": "983292d1bc1745a9b6b636f239e5596a",
"Name": "Item1",
"IsComplete": false
}
}
TodoService@127.0.0.1:5000> client.postTodoItem({Name: "TodoItem2"},pr)
TodoService@127.0.0.1:5000>
{
"todo": {
"Id": "17b4f25ab625454585867e294f01f601",
"Name": "TodoItem2",
"IsComplete": false
}
}
TodoService@127.0.0.1:5000> client.putTodoItem({todo:{Id:"17b4f25ab625454585867e294f01f601",Name:"EditedTodoItem2", IsComplete:true}}, pr)
TodoService@127.0.0.1:5000>
{
"todo": {
"Id": "17b4f25ab625454585867e294f01f601",
"Name": "EditedTodoItem2",
"IsComplete": true
}
}
TodoService@127.0.0.1:5000> client.deleteTodoItem({Id:"17b4f25ab625454585867e294f01f601"},pr)
TodoService@127.0.0.1:5000>
{
"todo": {
"Id": "17b4f25ab625454585867e294f01f601",
"Name": "EditedTodoItem2",
"IsComplete": true
}
}