diff --git a/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/opencontroller.cs b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/opencontroller.cs
new file mode 100644
index 0000000000..1ac50f75a2
--- /dev/null
+++ b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/opencontroller.cs
@@ -0,0 +1,11 @@
+public IActionResult Open(IFormCollection openRequest)
+{
+ OpenRequest open = new OpenRequest();
+ open.File = openRequest.Files[0];
+ return Content(Workbook.Open(open));
+}
+
+public void Save(SaveSettings saveSettings)
+{
+ Workbook.Save(saveSettings);
+}
\ No newline at end of file
diff --git a/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/razor b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/razor
new file mode 100644
index 0000000000..5c8f32eadc
--- /dev/null
+++ b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/razor
@@ -0,0 +1,17 @@
+@Html.EJS().Spreadsheet("spreadsheet").OpenUrl("Open").SaveUrl("Save").Created("created").Render()
+
+
\ No newline at end of file
diff --git a/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/tagHelper b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/tagHelper
new file mode 100644
index 0000000000..1152c5e127
--- /dev/null
+++ b/ej2-asp-core-mvc/code-snippet/spreadsheet/open-from-blob/tagHelper
@@ -0,0 +1,19 @@
+
+
+
+
+
diff --git a/ej2-asp-core-mvc/code-snippet/spreadsheet/save-as-blob/razor b/ej2-asp-core-mvc/code-snippet/spreadsheet/save-as-blob/razor
new file mode 100644
index 0000000000..e6b1b37008
--- /dev/null
+++ b/ej2-asp-core-mvc/code-snippet/spreadsheet/save-as-blob/razor
@@ -0,0 +1,22 @@
+@Html.EJS().Spreadsheet("spreadsheet").OpenUrl("Open").SaveUrl("Save").BeforeSave("beforeSave").SaveComplete("saveComplete").Sheets(sheet => {
+ sheet.Name("Price Details").Ranges(ranges => {
+ ranges.DataSource((IEnumerable