#include "stdafx.h"
#include "internal/internal_datastore.h"
#include "internal/constants.h"
#include "datastore.h"

namespace You {
namespace DataStore {

DataStore& DataStore::get() {
	static DataStore ds;
	return ds;
}

Transaction DataStore::begin() {
	return Internal::DataStore::get().begin();
}

void DataStore::post(TaskId taskId, const KeyValuePairs& task) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().post(Internal::TASKS_NODE, stringId, task);
}

void DataStore::put(TaskId taskId, const KeyValuePairs& task) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().put(Internal::TASKS_NODE, stringId, task);
}

void DataStore::erase(TaskId taskId) {
	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
	Internal::DataStore::get().erase(Internal::TASKS_NODE, stringId);
}

std::vector<KeyValuePairs> DataStore::getAllTasks() {
	return Internal::DataStore::get().getAll(Internal::TASKS_NODE);
}

std::vector<KeyValuePairs> DataStore::getAllResources() {
	return Internal::DataStore::get().getAll(Internal::RESOURCES_NODE);
}

}  // namespace DataStore
}  // namespace You

#include "stdafx.h"
#include "internal/internal_datastore.h"
#include "internal/constants.h"
#include "datastore.h"

namespace You {
namespace DataStore {

DataStore& DataStore::get() {
	static DataStore ds;
	return ds;
}

Transaction DataStore::begin() {
	return Internal::DataStore::get().begin();
}

void DataStore::post(TaskId taskId, const KeyValuePairs& task) {
	Internal::DataStore::get().post(taskId, task);
}

void DataStore::put(TaskId taskId, const KeyValuePairs& task) {
	Internal::DataStore::get().put(taskId, task);
}

void DataStore::erase(TaskId taskId) {
	Internal::DataStore::get().erase(taskId);
}

std::vector<KeyValuePairs> DataStore::getAllTasks() {
	return Internal::DataStore::get().getAll(Internal::TASKS_NODE);
}

std::vector<KeyValuePairs> DataStore::getAllResources() {
	return Internal::DataStore::get().getAll(Internal::RESOURCES_NODE);
}

}  // namespace DataStore
}  // namespace You

--- 
+++ 
@@ -16,15 +16,18 @@
 }
 
 void DataStore::post(TaskId taskId, const KeyValuePairs& task) {
-	Internal::DataStore::get().post(taskId, task);
+	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
+	Internal::DataStore::get().post(Internal::TASKS_NODE, stringId, task);
 }
 
 void DataStore::put(TaskId taskId, const KeyValuePairs& task) {
-	Internal::DataStore::get().put(taskId, task);
+	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
+	Internal::DataStore::get().put(Internal::TASKS_NODE, stringId, task);
 }
 
 void DataStore::erase(TaskId taskId) {
-	Internal::DataStore::get().erase(taskId);
+	std::wstring stringId = boost::lexical_cast<std::wstring>(taskId);
+	Internal::DataStore::get().erase(Internal::TASKS_NODE, stringId);
 }
 
 std::vector<KeyValuePairs> DataStore::getAllTasks() {
Fix post, put, erase for tasks to follow the changes
