In this episode, we'll explore the fundamentals of Azure Blob Storage, its key features, and how it can be leveraged to store and manage large amounts of unstructured data in the cloud.
During the episode, we'll cover:
• An overview of Azure Blob Storage and its use cases
• Understanding the different types of blobs: block blobs, append blobs, and page blobs
• Best practices for uploading, managing, and accessing blobs in Azure Storage
• Security features and data encryption options for protecting your blob data
• Real-world examples showcasing the versatility and scalability of Azure Blob Storage across industries
Whether you're a developer, data engineer, or cloud enthusiast, this episode will provide you with the knowledge and skills needed to effectively utilize Azure Blob Storage in your cloud-based applications and solutions. Don't miss out on this informative session packed with practical insights and demonstrations!
📺 CSharp TV - Dev Streaming Destination http://csharp.tv
🌎 C# Corner - Community of Software and Data Developers https://www.c-sharpcorner.com/
#Azure #AzureShow #CSharpTV #LiveShow #AzureEssentils #BlobStorage
Show More Show Less View Video Transcript
0:01
[Music]
0:11
[Music]
0:18
[Music]
0:33
hi this is Habib ran and welcome to my
0:36
hi this is Habib ran and welcome to my
0:36
hi this is Habib ran and welcome to my show as your essential series uh this is
0:39
show as your essential series uh this is
0:39
show as your essential series uh this is episode three and we will be talking
0:42
episode three and we will be talking
0:42
episode three and we will be talking about mastering aure blob storage okay
0:46
about mastering aure blob storage okay
0:46
about mastering aure blob storage okay so first of all uh we will talk about uh
0:49
so first of all uh we will talk about uh
0:49
so first of all uh we will talk about uh blob storage introduction then we have
0:52
blob storage introduction then we have
0:52
blob storage introduction then we have types of blob storage uh then we will
0:55
types of blob storage uh then we will
0:56
types of blob storage uh then we will talk about security and encryption
0:58
talk about security and encryption
0:58
talk about security and encryption features provided by blob St storage and
1:01
features provided by blob St storage and
1:01
features provided by blob St storage and then we will have hands-on experience
1:04
then we will have hands-on experience
1:04
then we will have hands-on experience with asp.net called MVC we will
1:07
with asp.net called MVC we will
1:07
with asp.net called MVC we will integrate with a simple application and
1:09
integrate with a simple application and
1:09
integrate with a simple application and we will talk about real uh word use
1:12
we will talk about real uh word use
1:12
we will talk about real uh word use cases so this is your host habiban and
1:16
cases so this is your host habiban and
1:16
cases so this is your host habiban and I'm two times cop Corner MVP Microsoft
1:19
I'm two times cop Corner MVP Microsoft
1:19
I'm two times cop Corner MVP Microsoft certified solution developer and
1:22
certified solution developer and
1:22
certified solution developer and currently working as a lead software
1:24
currently working as a lead software
1:24
currently working as a lead software developer at now software so let's start
1:28
developer at now software so let's start
1:28
developer at now software so let's start this uh first of all uh the first of the
1:31
this uh first of all uh the first of the
1:32
this uh first of all uh the first of the main thing about aure blob storage is
1:34
main thing about aure blob storage is
1:34
main thing about aure blob storage is scalable so you don't have to be worried
1:37
scalable so you don't have to be worried
1:37
scalable so you don't have to be worried about the scalability of azour blob
1:39
about the scalability of azour blob
1:39
about the scalability of azour blob storage it doesn't matter how many
1:42
storage it doesn't matter how many
1:42
storage it doesn't matter how many requests uh you need or how many users
1:44
requests uh you need or how many users
1:44
requests uh you need or how many users need to access your data uh it's always
1:47
need to access your data uh it's always
1:47
need to access your data uh it's always scalable you can uh duplicate your data
1:51
scalable you can uh duplicate your data
1:51
scalable you can uh duplicate your data on multiple regions uh also it's a
1:54
on multiple regions uh also it's a
1:54
on multiple regions uh also it's a durable storage option so you don't have
1:58
durable storage option so you don't have
1:58
durable storage option so you don't have to be worried about the durable ability
2:00
to be worried about the durable ability
2:00
to be worried about the durable ability of your storage every time user will
2:03
of your storage every time user will
2:03
of your storage every time user will access will get the same results then uh
2:09
access will get the same results then uh
2:09
access will get the same results then uh secure object storage solution asure
2:11
secure object storage solution asure
2:11
secure object storage solution asure provide us different encryption and
2:14
provide us different encryption and
2:14
provide us different encryption and Security Options and using that you can
2:17
Security Options and using that you can
2:17
Security Options and using that you can uh you can handle your exess of your
2:19
uh you can handle your exess of your
2:19
uh you can handle your exess of your storage data so it's secure to use then
2:22
storage data so it's secure to use then
2:22
storage data so it's secure to use then we have a large amount of data as your
2:25
we have a large amount of data as your
2:25
we have a large amount of data as your blob storage is good good for storing uh
2:29
blob storage is good good for storing uh
2:29
blob storage is good good for storing uh large amount of data especially for
2:32
large amount of data especially for
2:32
large amount of data especially for images uh or files or any type of binary
2:35
images uh or files or any type of binary
2:35
images uh or files or any type of binary data you can store gigabytes or t
2:38
data you can store gigabytes or t
2:39
data you can store gigabytes or t terabytes of
2:40
terabytes of
2:40
terabytes of data uh then you can also store
2:43
data uh then you can also store
2:43
data uh then you can also store unstructured data text or binary data so
2:46
unstructured data text or binary data so
2:46
unstructured data text or binary data so it also supports all types of data in
2:49
it also supports all types of data in
2:49
it also supports all types of data in aor Blob storage uh the main uh pros of
2:52
aor Blob storage uh the main uh pros of
2:53
aor Blob storage uh the main uh pros of Azor blob storage is a flexible storage
2:56
Azor blob storage is a flexible storage
2:56
Azor blob storage is a flexible storage DS so it means uh as your blob storage
2:59
DS so it means uh as your blob storage
3:00
DS so it means uh as your blob storage provide us uh different storage tiers
3:02
provide us uh different storage tiers
3:02
provide us uh different storage tiers with different rates and all these
3:05
with different rates and all these
3:05
with different rates and all these storage tiers have
3:08
storage tiers have
3:08
storage tiers have different uh options for example first
3:11
different uh options for example first
3:11
different uh options for example first of all we have hot uh storage Deer uh if
3:15
of all we have hot uh storage Deer uh if
3:15
of all we have hot uh storage Deer uh if your data is uh accessible uh a lot of
3:20
your data is uh accessible uh a lot of
3:20
your data is uh accessible uh a lot of times by a different users and it means
3:23
times by a different users and it means
3:23
times by a different users and it means you have a lot of traffic then the best
3:25
you have a lot of traffic then the best
3:25
you have a lot of traffic then the best option for tier is hot storage then you
3:28
option for tier is hot storage then you
3:28
option for tier is hot storage then you have a cool uh which is uh basically uh
3:31
have a cool uh which is uh basically uh
3:31
have a cool uh which is uh basically uh less expensive than hot storage and your
3:35
less expensive than hot storage and your
3:35
less expensive than hot storage and your data is accessible use by users very uh
3:40
data is accessible use by users very uh
3:40
data is accessible use by users very uh normally not too much frequently and
3:43
normally not too much frequently and
3:43
normally not too much frequently and then we have an archive
3:46
here uh if your data is archived for a
3:50
here uh if your data is archived for a
3:50
here uh if your data is archived for a large uh time span then archive is the
3:53
large uh time span then archive is the
3:53
large uh time span then archive is the best option because it have uh cheaper
3:56
best option because it have uh cheaper
3:56
best option because it have uh cheaper uh pricing options as compared to hot
3:58
uh pricing options as compared to hot
3:58
uh pricing options as compared to hot and cool so these are different tiers
4:00
and cool so these are different tiers
4:00
and cool so these are different tiers available then we have work seamlessly
4:02
available then we have work seamlessly
4:02
available then we have work seamlessly with Azure CDN so uh basically you can
4:06
with Azure CDN so uh basically you can
4:06
with Azure CDN so uh basically you can host or you can uh add your static data
4:10
host or you can uh add your static data
4:10
host or you can uh add your static data or static assets of any website on uh
4:13
or static assets of any website on uh
4:13
or static assets of any website on uh your asure blob storage and then it can
4:16
your asure blob storage and then it can
4:16
your asure blob storage and then it can be connected with Azure CDN uh for uh
4:20
be connected with Azure CDN uh for uh
4:20
be connected with Azure CDN uh for uh more optimized uh content delivery uh so
4:23
more optimized uh content delivery uh so
4:23
more optimized uh content delivery uh so it uh Works seamlessly with aor CDN uh
4:26
it uh Works seamlessly with aor CDN uh
4:26
it uh Works seamlessly with aor CDN uh then we have data analytics uh you can
4:30
then we have data analytics uh you can
4:30
then we have data analytics uh you can integrate your Azure blob
4:33
integrate your Azure blob
4:33
integrate your Azure blob storage uh with Azure data leak storage
4:36
storage uh with Azure data leak storage
4:36
storage uh with Azure data leak storage so it means you can generate uh
4:39
so it means you can generate uh
4:39
so it means you can generate uh different analytics and reports on the
4:41
different analytics and reports on the
4:41
different analytics and reports on the basis of your data which can help you uh
4:44
basis of your data which can help you uh
4:44
basis of your data which can help you uh to make your different business
4:46
to make your different business
4:46
to make your different business decisions and it's uh very easy to
4:50
decisions and it's uh very easy to
4:50
decisions and it's uh very easy to use then we have sports point in time
4:53
use then we have sports point in time
4:53
use then we have sports point in time restore and automatic backups uh so for
4:57
restore and automatic backups uh so for
4:57
restore and automatic backups uh so for all as your uh infrastructure you can
4:59
all as your uh infrastructure you can
4:59
all as your uh infrastructure you can use aure blob storage for uh saving your
5:03
use aure blob storage for uh saving your
5:03
use aure blob storage for uh saving your uh database backups or virtual machine
5:06
uh database backups or virtual machine
5:06
uh database backups or virtual machine backups or any type of backup inide as
5:09
backups or any type of backup inide as
5:09
backups or any type of backup inide as your blob storage and you can res
5:12
your blob storage and you can res
5:12
your blob storage and you can res restore just by clicking uh few options
5:15
restore just by clicking uh few options
5:15
restore just by clicking uh few options so this is the main benefit of aure blob
5:18
so this is the main benefit of aure blob
5:18
so this is the main benefit of aure blob storage uh then we have different types
5:20
storage uh then we have different types
5:21
storage uh then we have different types of blob storage uh first of all we have
5:24
of blob storage uh first of all we have
5:24
of blob storage uh first of all we have a block blob it is basically used for uh
5:27
a block blob it is basically used for uh
5:27
a block blob it is basically used for uh text and binary data storage
5:30
text and binary data storage
5:30
text and binary data storage it's ideal for uh saving files images
5:34
it's ideal for uh saving files images
5:34
it's ideal for uh saving files images videos and backup data and it supports
5:37
videos and backup data and it supports
5:37
videos and backup data and it supports large files uh large volume of files and
5:42
large files uh large volume of files and
5:42
large files uh large volume of files and asure blob
5:44
asure blob
5:44
asure blob storage can break them into smaller
5:47
storage can break them into smaller
5:47
storage can break them into smaller blogs for easy upload and easy download
5:50
blogs for easy upload and easy download
5:50
blogs for easy upload and easy download so there are different options available
5:53
so there are different options available
5:53
so there are different options available uh then we have append blobs it is
5:55
uh then we have append blobs it is
5:55
uh then we have append blobs it is basically optimized for append
5:58
basically optimized for append
5:58
basically optimized for append operations it is is uh good for the
6:01
operations it is is uh good for the
6:01
operations it is is uh good for the solutions where you have to upload or
6:04
solutions where you have to upload or
6:04
solutions where you have to upload or you have to append your data constantly
6:07
you have to append your data constantly
6:07
you have to append your data constantly into your asure blob storage and it can
6:11
into your asure blob storage and it can
6:11
into your asure blob storage and it can uh provide you feature for adding new
6:13
uh provide you feature for adding new
6:14
uh provide you feature for adding new blogs into your blob existing blob
6:16
blogs into your blob existing blob
6:16
blogs into your blob existing blob storage uh files so this is very good
6:19
storage uh files so this is very good
6:19
storage uh files so this is very good approach and you can use this for
6:21
approach and you can use this for
6:21
approach and you can use this for Telemetry data or any
6:24
Telemetry data or any
6:24
Telemetry data or any log data then we have a page blob uh
6:28
log data then we have a page blob uh
6:28
log data then we have a page blob uh this uh one is basically optimized for
6:30
this uh one is basically optimized for
6:30
this uh one is basically optimized for uh random operations read and write
6:33
uh random operations read and write
6:33
uh random operations read and write random operations so that's why it is
6:36
random operations so that's why it is
6:36
random operations so that's why it is used for virtual hard diss of your as
6:40
used for virtual hard diss of your as
6:40
used for virtual hard diss of your as your virtual machines so you can use
6:42
your virtual machines so you can use
6:42
your virtual machines so you can use this then it provide uh consistent
6:47
this then it provide uh consistent
6:47
this then it provide uh consistent bite uh optimization for frequent read
6:50
bite uh optimization for frequent read
6:50
bite uh optimization for frequent read write access so these are uh different
6:52
write access so these are uh different
6:52
write access so these are uh different blob storage types
6:55
blob storage types
6:55
blob storage types uh in our session basically we will be
7:00
uh in our session basically we will be
7:00
uh in our session basically we will be working on a Blog blobs and we will be
7:02
working on a Blog blobs and we will be
7:02
working on a Blog blobs and we will be integrating with aspor MVC
7:05
integrating with aspor MVC
7:05
integrating with aspor MVC solution then we have few uh security
7:08
solution then we have few uh security
7:08
solution then we have few uh security and encryption
7:10
and encryption
7:10
and encryption features provided by aor blog storage
7:13
features provided by aor blog storage
7:13
features provided by aor blog storage and first of all is server side
7:15
and first of all is server side
7:15
and first of all is server side encryption so when you are uploading
7:18
encryption so when you are uploading
7:18
encryption so when you are uploading your data uh to your Azure blob storage
7:21
your data uh to your Azure blob storage
7:21
your data uh to your Azure blob storage Microsoft Azure will automatically encr
7:24
Microsoft Azure will automatically encr
7:24
Microsoft Azure will automatically encr your data encrypt your data and then
7:26
your data encrypt your data and then
7:26
your data encrypt your data and then save it and whenever you are retrieving
7:28
save it and whenever you are retrieving
7:28
save it and whenever you are retrieving your data it will will decrypt it and uh
7:31
your data it will will decrypt it and uh
7:31
your data it will will decrypt it and uh resend uh to you so this is uh the
7:34
resend uh to you so this is uh the
7:34
resend uh to you so this is uh the encryption provided by server side uh by
7:37
encryption provided by server side uh by
7:37
encryption provided by server side uh by Microsoft as your storage then we have
7:41
Microsoft as your storage then we have
7:41
Microsoft as your storage then we have uh different encryption options while
7:44
uh different encryption options while
7:44
uh different encryption options while request Transit uh and one of them is
7:46
request Transit uh and one of them is
7:46
request Transit uh and one of them is https so you can use a hyper text
7:49
https so you can use a hyper text
7:49
https so you can use a hyper text transfer uh secure protocol for
7:51
transfer uh secure protocol for
7:51
transfer uh secure protocol for accessing your files uh over the network
7:54
accessing your files uh over the network
7:54
accessing your files uh over the network so that uh no one can interrupt your
7:57
so that uh no one can interrupt your
7:57
so that uh no one can interrupt your data or encrypt your data so this is the
8:00
data or encrypt your data so this is the
8:01
data or encrypt your data so this is the uh transient option then we have access
8:04
uh transient option then we have access
8:04
uh transient option then we have access control uh so there are different
8:07
control uh so there are different
8:07
control uh so there are different options by using which you can uh you
8:10
options by using which you can uh you
8:10
options by using which you can uh you can apply different permissions on your
8:13
can apply different permissions on your
8:13
can apply different permissions on your Azure blob uh so that you can provide
8:17
Azure blob uh so that you can provide
8:17
Azure blob uh so that you can provide access to other colleagues or other
8:20
access to other colleagues or other
8:20
access to other colleagues or other systems and one of them is shared access
8:23
systems and one of them is shared access
8:23
systems and one of them is shared access signature it's a basically token uh
8:26
signature it's a basically token uh
8:26
signature it's a basically token uh generated and this token is basically
8:29
generated and this token is basically
8:29
generated and this token is basically used for accessing your blob storage
8:31
used for accessing your blob storage
8:31
used for accessing your blob storage instead of using client token so this
8:33
instead of using client token so this
8:33
instead of using client token so this one is used and then we have role based
8:36
one is used and then we have role based
8:36
one is used and then we have role based Access Control Microsoft Azure blob
8:38
Access Control Microsoft Azure blob
8:38
Access Control Microsoft Azure blob storage can be integrated
8:41
storage can be integrated
8:41
storage can be integrated with aure active directory so we can
8:45
with aure active directory so we can
8:46
with aure active directory so we can provide different roles and groups with
8:48
provide different roles and groups with
8:48
provide different roles and groups with different permissions and they can
8:50
different permissions and they can
8:50
different permissions and they can access or aure blob
8:52
access or aure blob
8:52
access or aure blob storage then we have stored access uh
8:55
storage then we have stored access uh
8:55
storage then we have stored access uh policies we can make different policies
8:58
policies we can make different policies
8:58
policies we can make different policies where we can uh we can allow or deny
9:00
where we can uh we can allow or deny
9:01
where we can uh we can allow or deny specific IP addresses or different
9:03
specific IP addresses or different
9:03
specific IP addresses or different network rules uh which can access our
9:06
network rules uh which can access our
9:06
network rules uh which can access our blob data uh then we have network
9:09
blob data uh then we have network
9:09
blob data uh then we have network security we can integrate aure blob with
9:12
security we can integrate aure blob with
9:12
security we can integrate aure blob with aure virtual network uh and we can also
9:15
aure virtual network uh and we can also
9:15
aure virtual network uh and we can also create private end points which are only
9:18
create private end points which are only
9:18
create private end points which are only accessible to that specific user uh we
9:21
accessible to that specific user uh we
9:21
accessible to that specific user uh we can also have Firebase firewall rules
9:24
can also have Firebase firewall rules
9:24
can also have Firebase firewall rules firewall rules can apply a different
9:28
firewall rules can apply a different
9:28
firewall rules can apply a different permissions or different accessibility
9:31
permissions or different accessibility
9:31
permissions or different accessibility uh settings on your IP address or port
9:34
uh settings on your IP address or port
9:34
uh settings on your IP address or port and only those IP addresses can access
9:36
and only those IP addresses can access
9:36
and only those IP addresses can access your data so these are different options
9:39
your data so these are different options
9:39
your data so these are different options then we have audit and monitoring you
9:41
then we have audit and monitoring you
9:41
then we have audit and monitoring you can use Azure monitor uh with as your
9:46
can use Azure monitor uh with as your
9:46
can use Azure monitor uh with as your blob
9:47
blob
9:47
blob storage this option uh basically uh use
9:52
storage this option uh basically uh use
9:52
storage this option uh basically uh use tetre data for monitoring your storage
9:55
tetre data for monitoring your storage
9:55
tetre data for monitoring your storage account then we have a security Center
9:57
account then we have a security Center
9:57
account then we have a security Center which provides different insights of
9:59
which provides different insights of
9:59
which provides different insights of about the Securities and if there is any
10:01
about the Securities and if there is any
10:01
about the Securities and if there is any risk uh it will create an alert to you
10:04
risk uh it will create an alert to you
10:04
risk uh it will create an alert to you then we have activity log activity log
10:07
then we have activity log activity log
10:07
then we have activity log activity log basically record all the operations
10:09
basically record all the operations
10:09
basically record all the operations which are being performed uh on your
10:12
which are being performed uh on your
10:12
which are being performed uh on your aure blob account uh and those
10:14
aure blob account uh and those
10:14
aure blob account uh and those operations can be any create update or
10:17
operations can be any create update or
10:17
operations can be any create update or delete operation any operation which is
10:19
delete operation any operation which is
10:19
delete operation any operation which is happening on your storage account will
10:21
happening on your storage account will
10:21
happening on your storage account will be logged
10:23
be logged
10:23
be logged here uh and few real word use cases for
10:27
here uh and few real word use cases for
10:27
here uh and few real word use cases for example you have uh a media website you
10:31
example you have uh a media website you
10:31
example you have uh a media website you have large videos and large files which
10:34
have large videos and large files which
10:34
have large videos and large files which are rendering on your website so you can
10:37
are rendering on your website so you can
10:37
are rendering on your website so you can use Azure blob for that purpose you can
10:40
use Azure blob for that purpose you can
10:40
use Azure blob for that purpose you can also use uh aure blob for backup and
10:43
also use uh aure blob for backup and
10:43
also use uh aure blob for backup and Disaster Recovery if uh and you can
10:46
Disaster Recovery if uh and you can
10:46
Disaster Recovery if uh and you can automatically uh Tak backups on
10:50
automatically uh Tak backups on
10:50
automatically uh Tak backups on different typ
10:51
different typ
10:51
different typ interval of your system and then if
10:54
interval of your system and then if
10:54
interval of your system and then if there is any missish happening you can
10:57
there is any missish happening you can
10:57
there is any missish happening you can recover your uh system from from blob
11:00
recover your uh system from from blob
11:00
recover your uh system from from blob storage you can also host your static
11:03
storage you can also host your static
11:03
storage you can also host your static websites on Azure blob storage and you
11:06
websites on Azure blob storage and you
11:06
websites on Azure blob storage and you can integrate it with CDN uh for
11:09
can integrate it with CDN uh for
11:09
can integrate it with CDN uh for providing a more optimized uh solution
11:12
providing a more optimized uh solution
11:12
providing a more optimized uh solution you can also use this for archival
11:15
you can also use this for archival
11:15
you can also use this for archival storage for example you have a hospital
11:18
storage for example you have a hospital
11:18
storage for example you have a hospital or any Clinic where you have to record
11:21
or any Clinic where you have to record
11:21
or any Clinic where you have to record your patients data for uh many years so
11:25
your patients data for uh many years so
11:25
your patients data for uh many years so this is the best option uh you can
11:27
this is the best option uh you can
11:27
this is the best option uh you can create uh an archive tier which is
11:30
create uh an archive tier which is
11:30
create uh an archive tier which is basically cheaper as compared to other
11:33
basically cheaper as compared to other
11:33
basically cheaper as compared to other options and you can arive for uh many
11:37
options and you can arive for uh many
11:37
options and you can arive for uh many years on Z blow storage so these are few
11:41
years on Z blow storage so these are few
11:41
years on Z blow storage so these are few real word cases now I will move uh to
11:43
real word cases now I will move uh to
11:43
real word cases now I will move uh to the Practical session of our show where
11:47
the Practical session of our show where
11:47
the Practical session of our show where we will create an asp.net MVC
11:50
we will create an asp.net MVC
11:50
we will create an asp.net MVC application and inside that application
11:52
application and inside that application
11:53
application and inside that application we will uh we will be accessing as your
11:57
we will uh we will be accessing as your
11:57
we will uh we will be accessing as your blob storage
12:00
blob storage
12:00
blob storage uh before moving to this solution uh let
12:02
uh before moving to this solution uh let
12:02
uh before moving to this solution uh let me share you uh the directory or the
12:07
me share you uh the directory or the
12:07
me share you uh the directory or the GitHub repository where I'm storing my
12:10
GitHub repository where I'm storing my
12:10
GitHub repository where I'm storing my code so this is basically a repository
12:13
code so this is basically a repository
12:13
code so this is basically a repository you can access it AB developer Dash
12:17
you can access it AB developer Dash
12:17
you can access it AB developer Dash slash as your essential series uh so you
12:20
slash as your essential series uh so you
12:20
slash as your essential series uh so you can access it it's a public repo and for
12:23
can access it it's a public repo and for
12:23
can access it it's a public repo and for each branch I have a different uh for
12:26
each branch I have a different uh for
12:26
each branch I have a different uh for each so I have a different branch and
12:29
each so I have a different branch and
12:29
each so I have a different branch and inside that Branch I have a new project
12:32
inside that Branch I have a new project
12:32
inside that Branch I have a new project uh which basically contains the code of
12:34
uh which basically contains the code of
12:35
uh which basically contains the code of our show so let's move to this I already
12:39
our show so let's move to this I already
12:39
our show so let's move to this I already have created an asp.net MVC
12:43
have created an asp.net MVC
12:43
have created an asp.net MVC application this is uh basically
12:45
application this is uh basically
12:45
application this is uh basically currently an empty application so I will
12:48
currently an empty application so I will
12:48
currently an empty application so I will move with this first of all uh the main
12:52
move with this first of all uh the main
12:52
move with this first of all uh the main thing I need to do is uh I need to
12:55
thing I need to do is uh I need to
12:55
thing I need to do is uh I need to install a nugget package for aure blob
12:59
install a nugget package for aure blob
12:59
install a nugget package for aure blob storage so I will install a package uh
13:02
storage so I will install a package uh
13:02
storage so I will install a package uh it's basically AO
13:05
it's basically AO
13:05
it's basically AO do storage.
13:08
do storage.
13:08
do storage. blob
13:10
blob
13:10
blob so this package is provided by Microsoft
13:14
so this package is provided by Microsoft
13:14
so this package is provided by Microsoft I already have installed this so you
13:16
I already have installed this so you
13:16
I already have installed this so you just need this package
13:19
just need this package
13:19
just need this package uh to access your uh blob storage
13:23
uh to access your uh blob storage
13:23
uh to access your uh blob storage account so this package is already
13:26
account so this package is already
13:26
account so this package is already installed uh currently I'm using Azor
13:30
installed uh currently I'm using Azor
13:30
installed uh currently I'm using Azor right which is basically my which is
13:33
right which is basically my which is
13:33
right which is basically my which is basically as your
13:35
basically as your
13:35
basically as your storage account emulator so I already
13:38
storage account emulator so I already
13:38
storage account emulator so I already have a connection with that if you are
13:40
have a connection with that if you are
13:40
have a connection with that if you are interested to uh connect with your local
13:42
interested to uh connect with your local
13:42
interested to uh connect with your local storage account you can click on this
13:44
storage account you can click on this
13:44
storage account you can click on this option and then storage asor Right
13:47
option and then storage asor Right
13:47
option and then storage asor Right emulator if you will click on next
13:49
emulator if you will click on next
13:49
emulator if you will click on next option you need to provide uh your
13:52
option you need to provide uh your
13:52
option you need to provide uh your custom connection string name and the
13:55
custom connection string name and the
13:55
custom connection string name and the option where you want to store your keys
13:57
option where you want to store your keys
13:57
option where you want to store your keys and if when you will click C on this it
13:59
and if when you will click C on this it
13:59
and if when you will click C on this it will create a connection with azoro so
14:03
will create a connection with azoro so
14:03
will create a connection with azoro so and I'm also using another Tool uh which
14:06
and I'm also using another Tool uh which
14:06
and I'm also using another Tool uh which is basically Microsoft Azure storage
14:08
is basically Microsoft Azure storage
14:08
is basically Microsoft Azure storage Explorer uh so this tool basically help
14:11
Explorer uh so this tool basically help
14:11
Explorer uh so this tool basically help me to explore Azure blob storage
14:14
me to explore Azure blob storage
14:14
me to explore Azure blob storage currently I have uh three
14:17
currently I have uh three
14:17
currently I have uh three uh um three blob containers so let me
14:21
uh um three blob containers so let me
14:21
uh um three blob containers so let me explain the structure of your blob
14:24
explain the structure of your blob
14:24
explain the structure of your blob accounts first of all
14:27
accounts first of all
14:27
accounts first of all we have have a storage account on
14:31
we have have a storage account on
14:31
we have have a storage account on Microsoft as your and inside that
14:33
Microsoft as your and inside that
14:33
Microsoft as your and inside that account you have three option one is
14:36
account you have three option one is
14:36
account you have three option one is four option one is block container we
14:37
four option one is block container we
14:37
four option one is block container we have file shares we have cues and then
14:40
have file shares we have cues and then
14:40
have file shares we have cues and then we have tables if we move to blob blob
14:44
we have tables if we move to blob blob
14:44
we have tables if we move to blob blob storage and inside blob storage the next
14:46
storage and inside blob storage the next
14:46
storage and inside blob storage the next option is blob containers containers are
14:49
option is blob containers containers are
14:49
option is blob containers containers are uh just like uh your viritual
14:51
uh just like uh your viritual
14:51
uh just like uh your viritual directories where you can uh save uh
14:54
directories where you can uh save uh
14:54
directories where you can uh save uh data of different things for example you
14:57
data of different things for example you
14:57
data of different things for example you can create one container for saving
14:59
can create one container for saving
14:59
can create one container for saving profile images you can create another
15:02
profile images you can create another
15:02
profile images you can create another container for saving other media file uh
15:05
container for saving other media file uh
15:05
container for saving other media file uh so let's create a blog container here
15:08
so let's create a blog container here
15:08
so let's create a blog container here and in this case my blob container name
15:12
and in this case my blob container name
15:12
and in this case my blob container name is my images okay so I will be using
15:16
is my images okay so I will be using
15:16
is my images okay so I will be using this uh container for saving my data
15:20
this uh container for saving my data
15:20
this uh container for saving my data currently uh there is no data inside
15:22
currently uh there is no data inside
15:22
currently uh there is no data inside this blob container and I will upload a
15:26
this blob container and I will upload a
15:26
this blob container and I will upload a file and its type is and I have a one
15:30
file and its type is and I have a one
15:30
file and its type is and I have a one code file
15:34
code file
15:34
code file uh let me upload
15:38
it so currently it's uploading my file
15:42
it so currently it's uploading my file
15:42
it so currently it's uploading my file so my file has been uploaded okay uh
15:46
so my file has been uploaded okay uh
15:46
so my file has been uploaded okay uh let's move to the code where I will
15:48
let's move to the code where I will
15:48
let's move to the code where I will write a code for accessing uh my blob
15:51
write a code for accessing uh my blob
15:51
write a code for accessing uh my blob storage first of all I will create a new
15:54
storage first of all I will create a new
15:55
storage first of all I will create a new controller uh this controller will be uh
15:58
controller uh this controller will be uh
15:58
controller uh this controller will be uh an empty
15:59
an empty
15:59
an empty uh
16:01
uh
16:01
uh controller and I will name
16:06
it media
16:08
it media
16:08
it media control or I can say image controller so
16:12
control or I can say image controller so
16:12
control or I can say image controller so images controller I will be using this
16:14
images controller I will be using this
16:14
images controller I will be using this controller for
16:16
controller for
16:16
controller for uploading uploading previewing and then
16:19
uploading uploading previewing and then
16:20
uploading uploading previewing and then deleting different blob storage
16:23
deleting different blob storage
16:23
deleting different blob storage files okay so first of
16:25
files okay so first of
16:25
files okay so first of all I need uh I need to create a blob
16:30
all I need uh I need to create a blob
16:30
all I need uh I need to create a blob client so this uh client will be uh I
16:35
client so this uh client will be uh I
16:35
client so this uh client will be uh I will say blob client
16:39
service this uh client
16:43
service this uh client
16:43
service this uh client will be
16:46
will be
16:46
will be using I will use this client uh for
16:49
using I will use this client uh for
16:49
using I will use this client uh for accessing uh blob
16:51
accessing uh blob
16:51
accessing uh blob storage uh let me create a new
16:53
storage uh let me create a new
16:53
storage uh let me create a new Constructor and inside this Constructor
16:56
Constructor and inside this Constructor
16:56
Constructor and inside this Constructor I need
16:57
I need
16:57
I need to create a blob service client and
17:01
to create a blob service client and
17:01
to create a blob service client and inside this I need to provide my
17:03
inside this I need to provide my
17:03
inside this I need to provide my connection
17:05
connection
17:05
connection string as I am using uh aoide so I can
17:11
string as I am using uh aoide so I can
17:11
string as I am using uh aoide so I can just use this setting and it will
17:14
just use this setting and it will
17:14
just use this setting and it will automatically connect me with local
17:17
automatically connect me with local
17:17
automatically connect me with local development storage account uh okay this
17:21
development storage account uh okay this
17:21
development storage account uh okay this was the first option of creating client
17:23
was the first option of creating client
17:23
was the first option of creating client so my client has been initialized uh the
17:26
so my client has been initialized uh the
17:26
so my client has been initialized uh the next option is creating a container
17:29
next option is creating a container
17:29
next option is creating a container client uh I already have created a
17:34
client uh I already have created a
17:34
client uh I already have created a container so now I will uh connect with
17:38
container so now I will uh connect with
17:38
container so now I will uh connect with that
17:40
that
17:40
that container so this is blob container
17:43
container so this is blob container
17:43
container so this is blob container client and in my code I will initialize
17:48
client and in my code I will initialize
17:48
client and in my code I will initialize container client and inside this
17:52
container client and inside this
17:52
container client and inside this client I
17:57
uh I can and also call this blob client
18:02
uh I can and also call this blob client
18:02
uh I can and also call this blob client dot get Blob client container and here I
18:06
dot get Blob client container and here I
18:06
dot get Blob client container and here I need to provide my container name so
18:10
need to provide my container name so
18:10
need to provide my container name so let's create a constant here for my
18:12
let's create a constant here for my
18:12
let's create a constant here for my container
18:16
name and my container name
18:19
name and my container name
18:19
name and my container name is my images okay now pass this
18:23
is my images okay now pass this
18:23
is my images okay now pass this container name into get Blob container
18:26
container name into get Blob container
18:26
container name into get Blob container client function
18:29
client function
18:29
client function I will say container name so my basic
18:32
I will say container name so my basic
18:32
I will say container name so my basic infrastructure is ready now next option
18:34
infrastructure is ready now next option
18:34
infrastructure is ready now next option is I need to
18:36
is I need to
18:36
is I need to get my blob containers uh files inside
18:41
get my blob containers uh files inside
18:41
get my blob containers uh files inside this index action of let's write this
18:45
this index action of let's write this
18:45
this index action of let's write this container client that get blobs so this
18:48
container client that get blobs so this
18:48
container client that get blobs so this function will gets all the blobs which
18:54
function will gets all the blobs which
18:54
function will gets all the blobs which are currently uploaded inside
19:01
I
19:03
I
19:03
I uh my images contain I will pass this
19:06
uh my images contain I will pass this
19:06
uh my images contain I will pass this blobs to my asp.net MVC View and as you
19:10
blobs to my asp.net MVC View and as you
19:10
blobs to my asp.net MVC View and as you can see it's type is as your pageable
19:12
can see it's type is as your pageable
19:12
can see it's type is as your pageable and then blob item so let's create a new
19:15
and then blob item so let's create a new
19:15
and then blob item so let's create a new view this view basically will be showing
19:19
view this view basically will be showing
19:19
view this view basically will be showing a list of of all the aure uh blobs
19:25
a list of of all the aure uh blobs
19:25
a list of of all the aure uh blobs inside my container so I will now write
19:28
inside my container so I will now write
19:28
inside my container so I will now write my code here first of all I need to bind
19:30
my code here first of all I need to bind
19:30
my code here first of all I need to bind my
19:33
model uh that was a your pageable and
19:37
model uh that was a your pageable and
19:37
model uh that was a your pageable and then blob
19:40
then blob
19:40
then blob item
19:42
item
19:42
item okay okay this is my model uh now next
19:46
okay okay this is my model uh now next
19:46
okay okay this is my model uh now next uh I will make a table for showing all
19:49
uh I will make a table for showing all
19:49
uh I will make a table for showing all the blob storage I'm using uh
19:53
the blob storage I'm using uh
19:53
the blob storage I'm using uh basically bootstrap so I
19:57
basically bootstrap so I
19:57
basically bootstrap so I will put a CLA so that it looks a little
20:01
will put a CLA so that it looks a little
20:01
will put a CLA so that it looks a little bit good so this is my header and inside
20:05
bit good so this is my header and inside
20:05
bit good so this is my header and inside header first of all I have a blob
20:09
header first of all I have a blob
20:09
header first of all I have a blob name
20:10
name
20:11
name and then I will have a different actions
20:15
and then I will have a different actions
20:15
and then I will have a different actions which I can perform on my blob storage
20:18
which I can perform on my blob storage
20:18
which I can perform on my blob storage uh next I will I trate over my
20:24
model and in each iteration I will
20:27
model and in each iteration I will
20:27
model and in each iteration I will create a new row and inside row I have
20:30
create a new row and inside row I have
20:30
create a new row and inside row I have to show
20:33
to show
20:33
to show item dot
20:35
item dot
20:36
item dot name so this will basically show the
20:38
name so this will basically show the
20:38
name so this will basically show the name of
20:39
name of
20:39
name of my blog files so let's run it and see
20:45
my blog files so let's run it and see
20:45
my blog files so let's run it and see whether it is working okay or
20:50
not okay so my project is
20:54
not okay so my project is
20:54
not okay so my project is building okay let's move to the route
20:59
building okay let's move to the route
20:59
building okay let's move to the route images and here you can see the latest
21:02
images and here you can see the latest
21:02
images and here you can see the latest downloaded images showing here so
21:05
downloaded images showing here so
21:05
downloaded images showing here so currently I'm just showing the names and
21:07
currently I'm just showing the names and
21:07
currently I'm just showing the names and later on I will show you how to preview
21:10
later on I will show you how to preview
21:10
later on I will show you how to preview this file let me upload uh one more file
21:13
this file let me upload uh one more file
21:13
this file let me upload uh one more file so that you guys can have an
21:18
idea okay I have different codes I have
21:21
idea okay I have different codes I have
21:21
idea okay I have different codes I have a code snippet so let's upload
21:25
a code snippet so let's upload
21:25
a code snippet so let's upload it currently it's uploading okay okay
21:28
it currently it's uploading okay okay
21:28
it currently it's uploading okay okay uploaded successfully now if I refresh
21:32
uploaded successfully now if I refresh
21:32
uploaded successfully now if I refresh oh you can see that uh currently I have
21:35
oh you can see that uh currently I have
21:35
oh you can see that uh currently I have two blob items in my
21:39
two blob items in my
21:39
two blob items in my container okay so this is the first
21:42
container okay so this is the first
21:42
container okay so this is the first option uh now next option is I will
21:45
option uh now next option is I will
21:45
option uh now next option is I will create a detail page or I will create a
21:48
create a detail page or I will create a
21:48
create a detail page or I will create a preview page where I will show
21:52
preview page where I will show
21:52
preview page where I will show my blobs uh file so I will be getting uh
21:57
my blobs uh file so I will be getting uh
21:57
my blobs uh file so I will be getting uh blob name
22:01
as an input parameter of my action and
22:04
as an input parameter of my action and
22:04
as an input parameter of my action and inside this I will be
22:10
accessing
22:13
accessing
22:13
accessing my blob container so here I will call
22:16
my blob container so here I will call
22:16
my blob container so here I will call get Blob
22:19
client and inside this I need to provide
22:22
client and inside this I need to provide
22:22
client and inside this I need to provide blow blob name so this is basically blob
22:26
blow blob name so this is basically blob
22:26
blow blob name so this is basically blob client
22:28
client
22:28
client then uh I will
22:31
then uh I will
22:31
then uh I will call a blob client function which will
22:35
call a blob client function which will
22:35
call a blob client function which will basically generate a
22:39
basically generate a
22:39
basically generate a URL so basically I will be able to
22:42
URL so basically I will be able to
22:42
URL so basically I will be able to access my image using this URL uh this
22:46
access my image using this URL uh this
22:46
access my image using this URL uh this function needs an permission parameter
22:50
function needs an permission parameter
22:50
function needs an permission parameter and where I can set
22:53
and where I can set
22:53
and where I can set uh which permission or which things will
22:56
uh which permission or which things will
22:56
uh which permission or which things will be available on this URL so I need to
22:59
be available on this URL so I need to
22:59
be available on this URL so I need to read the file only so I will make it
23:03
read the file only so I will make it
23:03
read the file only so I will make it read
23:07
this currently it's giving me an error
23:11
this currently it's giving me an error
23:11
this currently it's giving me an error so uh basically I also need to provide
23:15
so uh basically I also need to provide
23:15
so uh basically I also need to provide the expiration time as well so this
23:18
the expiration time as well so this
23:18
the expiration time as well so this expiration time basically
23:31
okay this expiration time basically
23:33
okay this expiration time basically
23:33
okay this expiration time basically tells when you want to expire your url
23:37
tells when you want to expire your url
23:37
tells when you want to expire your url so my URL will be generated for one day
23:39
so my URL will be generated for one day
23:39
so my URL will be generated for one day so it means using this generated
23:44
so it means using this generated
23:44
so it means using this generated URL user will be only uh able to access
23:48
URL user will be only uh able to access
23:48
URL user will be only uh able to access the file for one day now let's pause
23:51
the file for one day now let's pause
23:51
the file for one day now let's pause this to view
23:54
this to view
23:54
this to view bag so that I can read this Inside by
23:57
bag so that I can read this Inside by
23:57
bag so that I can read this Inside by detail section let's create another
24:01
view and inside this view uh
24:06
view and inside this view uh
24:06
view and inside this view uh it's name is
24:11
details okay uh now simply I will create
24:16
details okay uh now simply I will create
24:16
details okay uh now simply I will create an image here and this image will be
24:19
an image here and this image will be
24:19
an image here and this image will be using URL from my viewbag so this is a
24:22
using URL from my viewbag so this is a
24:22
using URL from my viewbag so this is a simple view which will be rendering my
24:24
simple view which will be rendering my
24:24
simple view which will be rendering my image okay uh next option is add a
24:28
image okay uh next option is add a
24:28
image okay uh next option is add a button
24:29
button
24:29
button here an anchor tag and this anchor tag
24:33
here an anchor tag and this anchor tag
24:33
here an anchor tag and this anchor tag basically uh whenever user will click on
24:36
basically uh whenever user will click on
24:36
basically uh whenever user will click on this it will redirect us on Details page
24:39
this it will redirect us on Details page
24:39
this it will redirect us on Details page and Details page will be showing
24:46
us need to provide my parameter here
24:49
us need to provide my parameter here
24:49
us need to provide my parameter here which is a z route blob
24:55
name so here I will provide item
24:59
name so here I will provide item
24:59
name so here I will provide item uh do name okay so this is the now let's
25:04
uh do name okay so this is the now let's
25:04
uh do name okay so this is the now let's run this and see whether it works or
25:12
not okay let's move
25:16
not okay let's move
25:16
not okay let's move to images
25:18
to images
25:18
to images controller click on
25:20
controller click on
25:20
controller click on preview okay so you can see that uh the
25:23
preview okay so you can see that uh the
25:23
preview okay so you can see that uh the image is showing inside my Details page
25:26
image is showing inside my Details page
25:26
image is showing inside my Details page so this is how you can prev your files
25:29
so this is how you can prev your files
25:29
so this is how you can prev your files or you can access or share your files
25:32
or you can access or share your files
25:32
or you can access or share your files with other users so this is First Option
25:35
with other users so this is First Option
25:35
with other users so this is First Option you can also uh download your
25:39
you can also uh download your
25:39
you can also uh download your file so let's move to that option you
25:42
file so let's move to that option you
25:42
file so let's move to that option you can also uh download your file uh and
25:45
can also uh download your file uh and
25:45
can also uh download your file uh and inside this uh first of all basically
25:48
inside this uh first of all basically
25:48
inside this uh first of all basically you have to uh download the file from a
25:52
you have to uh download the file from a
25:52
you have to uh download the file from a your blob storage account and then you
25:55
your blob storage account and then you
25:55
your blob storage account and then you can pass that to your uh file action
25:57
can pass that to your uh file action
25:57
can pass that to your uh file action which will basically do downloading in
26:00
which will basically do downloading in
26:00
which will basically do downloading in asp.net MVC so let's go to that I will
26:04
asp.net MVC so let's go to that I will
26:04
asp.net MVC so let's go to that I will also create
26:10
another uh function and this function or
26:14
another uh function and this function or
26:14
another uh function and this function or okay so most of the code is
26:17
okay so most of the code is
26:18
okay so most of the code is same as like this so I will be copying
26:21
same as like this so I will be copying
26:21
same as like this so I will be copying this and here I will say
26:24
this and here I will say
26:24
this and here I will say download this section will also get Blob
26:27
download this section will also get Blob
26:27
download this section will also get Blob name and then it will create a blob
26:31
name and then it will create a blob
26:31
name and then it will create a blob client when blob client will be created
26:34
client when blob client will be created
26:34
client when blob client will be created then we will call download option so I
26:37
then we will call download option so I
26:37
then we will call download option so I will remove this code and I will call
26:41
will remove this code and I will call
26:41
will remove this code and I will call download option so there are different
26:44
download option so there are different
26:44
download option so there are different functions available you can download
26:46
functions available you can download
26:46
functions available you can download content you can download uh streaming
26:49
content you can download uh streaming
26:49
content you can download uh streaming and you can download two option so I
26:51
and you can download two option so I
26:51
and you can download two option so I will be using download two option and
26:53
will be using download two option and
26:53
will be using download two option and inside this I need to provide a memory
26:56
inside this I need to provide a memory
26:56
inside this I need to provide a memory stream so I will create a new new stream
27:01
stream so I will create a new new stream
27:01
stream so I will create a new new stream for example I will say uh for Ms is
27:05
for example I will say uh for Ms is
27:05
for example I will say uh for Ms is equal to memory
27:09
stream and now I will pause this memory
27:12
stream and now I will pause this memory
27:12
stream and now I will pause this memory stream to my download function so now
27:16
stream to my download function so now
27:16
stream to my download function so now when I will call my download two
27:18
when I will call my download two
27:18
when I will call my download two function this will download the file and
27:21
function this will download the file and
27:21
function this will download the file and will save it inside my memory stream
27:24
will save it inside my memory stream
27:24
will save it inside my memory stream next I need
27:25
next I need
27:25
next I need [Applause]
27:27
[Applause]
27:27
[Applause] to set my uh stream position to zero so
27:31
to set my uh stream position to zero so
27:31
to set my uh stream position to zero so that uh again I can read data from
27:35
that uh again I can read data from
27:35
that uh again I can read data from my memory stream and here instead of
27:38
my memory stream and here instead of
27:38
my memory stream and here instead of returning view I will be basically
27:41
returning view I will be basically
27:41
returning view I will be basically returning a memory
27:44
returning a memory
27:44
returning a memory stream here I need to uh provide content
27:48
stream here I need to uh provide content
27:48
stream here I need to uh provide content type and then the basically the content
27:52
type and then the basically the content
27:52
type and then the basically the content type I can say is application slent
27:55
type I can say is application slent
27:55
type I can say is application slent stream
27:58
stream
27:58
stream and then here I need to provide the file
28:02
and then here I need to provide the file
28:02
and then here I need to provide the file name so I need to provide the file name
28:05
name so I need to provide the file name
28:05
name so I need to provide the file name when file will be downloaded so this
28:07
when file will be downloaded so this
28:07
when file will be downloaded so this name will be used uh by default so I can
28:10
name will be used uh by default so I can
28:10
name will be used uh by default so I can say it uh blob name as
28:14
say it uh blob name as
28:14
say it uh blob name as well so now I need to add a new button
28:18
well so now I need to add a new button
28:18
well so now I need to add a new button for download inside my action so let's
28:22
for download inside my action so let's
28:22
for download inside my action so let's copy the same one just change the name
28:25
copy the same one just change the name
28:25
copy the same one just change the name for this download and here I I will say
28:29
for this download and here I I will say
28:29
for this download and here I I will say download so let's run the code and see
28:33
download so let's run the code and see
28:33
download so let's run the code and see how it look
28:40
lies now if I move to images
28:46
coner and click on download
28:50
coner and click on download
28:50
coner and click on download button okay close stream uh basically
28:54
button okay close stream uh basically
28:54
button okay close stream uh basically the issue is that I have used the using
28:57
the issue is that I have used the using
28:57
the issue is that I have used the using parameter
28:58
parameter
28:59
parameter and that's way I am unable to access my
29:02
and that's way I am unable to access my
29:02
and that's way I am unable to access my memory stream because it is uh disposed
29:06
memory stream because it is uh disposed
29:06
memory stream because it is uh disposed bynet before it is accessible inside uh
29:10
bynet before it is accessible inside uh
29:10
bynet before it is accessible inside uh this file option so let's
29:13
this file option so let's
29:13
this file option so let's remove using option and see how it look
29:16
remove using option and see how it look
29:16
remove using option and see how it look lies I hope it should work
29:20
lies I hope it should work
29:20
lies I hope it should work now now go to
29:25
images
29:26
images
29:26
images download so you can see that my file
29:30
download so you can see that my file
29:30
download so you can see that my file have been downloaded and if I open the
29:33
have been downloaded and if I open the
29:33
have been downloaded and if I open the file it is showing
29:36
file it is showing
29:36
file it is showing properly so this is how you can download
29:39
properly so this is how you can download
29:39
properly so this is how you can download your files as well in asp.net cor MVC
29:43
your files as well in asp.net cor MVC
29:43
your files as well in asp.net cor MVC using blob
29:46
storage so the next option is uh
29:51
storage so the next option is uh
29:51
storage so the next option is uh providing an upload option so I will
29:55
providing an upload option so I will
29:55
providing an upload option so I will create or I will rename my create to
29:58
create or I will rename my create to
29:58
create or I will rename my create to upload so that I can upload a a new file
30:03
upload so that I can upload a a new file
30:03
upload so that I can upload a a new file using my application into blob storage
30:06
using my application into blob storage
30:06
using my application into blob storage account so I will change it to
30:08
account so I will change it to
30:09
account so I will change it to upload also prename this
30:12
upload also prename this
30:12
upload also prename this comment okay uh let's remove this extra
30:16
comment okay uh let's remove this extra
30:16
comment okay uh let's remove this extra option of the
30:20
edit okay for
30:22
edit okay for
30:22
edit okay for uploading in asp.net MVC first of all uh
30:26
uploading in asp.net MVC first of all uh
30:26
uploading in asp.net MVC first of all uh I have to create uh
30:29
I have to create uh
30:29
I have to create uh a post option and this post option will
30:32
a post option and this post option will
30:32
a post option and this post option will be getting I form
30:34
be getting I form
30:34
be getting I form file and I will I form file name will be
30:39
file and I will I form file name will be
30:39
file and I will I form file name will be file so this is the input parameter that
30:42
file so this is the input parameter that
30:42
file so this is the input parameter that I will be using for getting the file
30:46
I will be using for getting the file
30:46
I will be using for getting the file data from form and now here I will call
30:52
data from form and now here I will call
30:52
data from form and now here I will call container client. upload blob
30:56
container client. upload blob
30:56
container client. upload blob option inside upload blob option I need
30:59
option inside upload blob option I need
30:59
option inside upload blob option I need to provide two things first of all I
31:02
to provide two things first of all I
31:02
to provide two things first of all I need to provide blob name blob name will
31:07
need to provide blob name blob name will
31:07
need to provide blob name blob name will be basically the file name and using
31:09
be basically the file name and using
31:09
be basically the file name and using this I will be able to access this file
31:11
this I will be able to access this file
31:11
this I will be able to access this file then we have uh content inside content
31:14
then we have uh content inside content
31:14
then we have uh content inside content we can provide a stream or we can
31:16
we can provide a stream or we can
31:16
we can provide a stream or we can provide binary data so I will be
31:18
provide binary data so I will be
31:18
provide binary data so I will be providing a stream here first of all I
31:20
providing a stream here first of all I
31:20
providing a stream here first of all I need to provide the file
31:24
need to provide the file
31:24
need to provide the file name so here it is file name and so I'll
31:28
name so here it is file name and so I'll
31:28
name so here it is file name and so I'll basically using file name as a blob name
31:31
basically using file name as a blob name
31:31
basically using file name as a blob name uh then I need to get the
31:35
uh then I need to get the
31:35
uh then I need to get the stream so I will call open read stream
31:38
stream so I will call open read stream
31:38
stream so I will call open read stream so this will provide a stream to the
31:40
so this will provide a stream to the
31:40
so this will provide a stream to the upload blob function and upload blob
31:43
upload blob function and upload blob
31:43
upload blob function and upload blob function will save it to the aure blob
31:46
function will save it to the aure blob
31:46
function will save it to the aure blob storage account what a condition here
31:49
storage account what a condition here
31:49
storage account what a condition here basically
31:51
basically
31:51
basically sometimes user uh call or upload the
31:55
sometimes user uh call or upload the
31:55
sometimes user uh call or upload the folder or upload the form uh without
31:59
folder or upload the form uh without
31:59
folder or upload the form uh without adding the file that's why we also have
32:04
to provide a condition here
32:11
and so if my file sorry if my file is
32:17
and so if my file sorry if my file is
32:17
and so if my file sorry if my file is null
32:19
null
32:19
null or the length is zero so it means file
32:23
or the length is zero so it means file
32:23
or the length is zero so it means file is not uploaded or uh properly then I
32:26
is not uploaded or uh properly then I
32:26
is not uploaded or uh properly then I will return from here and I will say bad
32:30
will return from here and I will say bad
32:30
will return from here and I will say bad request okay and if everything is okay
32:34
request okay and if everything is okay
32:34
request okay and if everything is okay upload that blog to this and after that
32:37
upload that blog to this and after that
32:37
upload that blog to this and after that redirect the user to the index page so
32:40
redirect the user to the index page so
32:40
redirect the user to the index page so that he can see the newly uploaded
32:43
that he can see the newly uploaded
32:43
that he can see the newly uploaded file okay now uh the next option
32:47
file okay now uh the next option
32:47
file okay now uh the next option is create a new view for this upload
32:54
action and inside this view I will
32:57
action and inside this view I will
32:57
action and inside this view I will create create a
32:59
create create a
32:59
create create a form this form basically will be using
33:02
form this form basically will be using
33:02
form this form basically will be using for uploading files I uh need an input
33:06
for uploading files I uh need an input
33:06
for uploading files I uh need an input and this input type will be
33:09
and this input type will be
33:09
and this input type will be file give a name here so that we can map
33:13
file give a name here so that we can map
33:13
file give a name here so that we can map it the name is
33:15
it the name is
33:15
it the name is file and you can also provide form
33:18
file and you can also provide form
33:19
file and you can also provide form control class
33:22
here I also need to put a button here
33:27
here I also need to put a button here
33:27
here I also need to put a button here and this button type will be
33:30
and this button type will be
33:30
and this button type will be submit and you can say here
33:35
submit and you can say here
33:35
submit and you can say here save now I also need to provide the
33:39
save now I also need to provide the
33:39
save now I also need to provide the action uh on which I want to submit this
33:42
action uh on which I want to submit this
33:42
action uh on which I want to submit this form and this action name is upload I
33:46
form and this action name is upload I
33:46
form and this action name is upload I also need to provide ink type ink type
33:48
also need to provide ink type ink type
33:48
also need to provide ink type ink type is basically whenever you want to upload
33:51
is basically whenever you want to upload
33:51
is basically whenever you want to upload different type of data instead of plane
33:54
different type of data instead of plane
33:54
different type of data instead of plane data or form data you want to upload
33:56
data or form data you want to upload
33:56
data or form data you want to upload files then you have to make this option
33:59
files then you have to make this option
33:59
files then you have to make this option as a multi-art form data then uh
34:02
as a multi-art form data then uh
34:02
as a multi-art form data then uh different data or files will be uploaded
34:05
different data or files will be uploaded
34:05
different data or files will be uploaded to uh your MVC
34:07
to uh your MVC
34:07
to uh your MVC action okay so this is our form and this
34:11
action okay so this is our form and this
34:12
action okay so this is our form and this is our controller now uh let's click on
34:16
is our controller now uh let's click on
34:16
is our controller now uh let's click on run button and see how it look likees
34:29
let's close the extra tabs okay now I'm
34:33
let's close the extra tabs okay now I'm
34:33
let's close the extra tabs okay now I'm going to uh
34:36
going to uh
34:36
going to uh images here currently I have two images
34:40
images here currently I have two images
34:40
images here currently I have two images and now let's call upload action so this
34:43
and now let's call upload action so this
34:43
and now let's call upload action so this is the option and in first one I have to
34:47
is the option and in first one I have to
34:47
is the option and in first one I have to uh provide any image for example I have
34:50
uh provide any image for example I have
34:50
uh provide any image for example I have an image of my show that I need to
34:52
an image of my show that I need to
34:52
an image of my show that I need to upload and then click on save button so
34:55
upload and then click on save button so
34:55
upload and then click on save button so when I will click on save button this
34:57
when I will click on save button this
34:57
when I will click on save button this will hit my upload action and inside
35:00
will hit my upload action and inside
35:00
will hit my upload action and inside this upload action you can see my file
35:03
this upload action you can see my file
35:03
this upload action you can see my file this is the content type of my
35:06
this is the content type of my
35:06
this is the content type of my file and then I have file name uh also
35:10
file and then I have file name uh also
35:10
file and then I have file name uh also have the description of the file and
35:12
have the description of the file and
35:12
have the description of the file and then a stream of the file so
35:16
then a stream of the file so
35:16
then a stream of the file so let's go to next step and upload the
35:20
let's go to next step and upload the
35:20
let's go to next step and upload the file okay my file uploaded successfully
35:23
file okay my file uploaded successfully
35:23
file okay my file uploaded successfully and if I
35:24
and if I
35:24
and if I continue and I can see my newly up
35:27
continue and I can see my newly up
35:27
continue and I can see my newly up loaded file inside this lift if I see
35:30
loaded file inside this lift if I see
35:30
loaded file inside this lift if I see this inside uh solution Explorer as your
35:33
this inside uh solution Explorer as your
35:33
this inside uh solution Explorer as your storage
35:34
storage
35:35
storage Explorer and let's click on refresh you
35:38
Explorer and let's click on refresh you
35:38
Explorer and let's click on refresh you can see newly uploaded file is showing
35:41
can see newly uploaded file is showing
35:41
can see newly uploaded file is showing here if I click on preview button you
35:44
here if I click on preview button you
35:44
here if I click on preview button you can see image is showing here and if I
35:48
can see image is showing here and if I
35:48
can see image is showing here and if I see it using my preview option it is
35:51
see it using my preview option it is
35:51
see it using my preview option it is also showing here if I download
35:54
also showing here if I download
35:54
also showing here if I download it
35:56
it
35:56
it and here it is
35:58
and here it is
35:58
and here it is showing uh so this is how you can upload
36:01
showing uh so this is how you can upload
36:01
showing uh so this is how you can upload your uh file to blob
36:04
your uh file to blob
36:04
your uh file to blob storage uh the other option the next
36:08
storage uh the other option the next
36:08
storage uh the other option the next option which we will Implement is uh
36:10
option which we will Implement is uh
36:10
option which we will Implement is uh Delete
36:13
option and this delete option basically
36:17
option and this delete option basically
36:17
option and this delete option basically will be deleting my blob file from
36:20
will be deleting my blob file from
36:20
will be deleting my blob file from Storage account so let's change it uh
36:25
Storage account so let's change it uh
36:25
Storage account so let's change it uh with a string
36:28
with a string
36:28
with a string basically I will be getting blob name
36:30
basically I will be getting blob name
36:30
basically I will be getting blob name here I no need to get a form collection
36:34
here I no need to get a form collection
36:34
here I no need to get a form collection here and I'm changing it to http
36:38
here and I'm changing it to http
36:38
here and I'm changing it to http get uh basically it's not good approach
36:42
get uh basically it's not good approach
36:42
get uh basically it's not good approach but still I'm changing it to http get so
36:44
but still I'm changing it to http get so
36:44
but still I'm changing it to http get so that instead of creating a new separate
36:47
that instead of creating a new separate
36:47
that instead of creating a new separate view I can directly call delete action
36:50
view I can directly call delete action
36:50
view I can directly call delete action and the file will be
36:52
and the file will be
36:52
and the file will be deleted okay now inside this uh first of
36:56
deleted okay now inside this uh first of
36:56
deleted okay now inside this uh first of all I need to create blob
36:59
all I need to create blob
36:59
all I need to create blob client so I will call it container
37:02
client so I will call it container
37:02
client so I will call it container client. get Blob client and inside blob
37:05
client. get Blob client and inside blob
37:05
client. get Blob client and inside blob client I need to provide blob
37:09
name if uh blob client is get
37:13
name if uh blob client is get
37:13
name if uh blob client is get successfully then I need to call the
37:15
successfully then I need to call the
37:15
successfully then I need to call the delete function lob client.
37:19
delete function lob client.
37:19
delete function lob client. delete if exist uh basically I'm using
37:22
delete if exist uh basically I'm using
37:22
delete if exist uh basically I'm using this so that if uh file does not exist
37:25
this so that if uh file does not exist
37:25
this so that if uh file does not exist or file already have been deleted no uh
37:28
or file already have been deleted no uh
37:28
or file already have been deleted no uh error comes to us so this is how easily
37:32
error comes to us so this is how easily
37:32
error comes to us so this is how easily you can delete your file from aure blog
37:38
storage
37:39
storage
37:39
storage okay uh now let's
37:42
okay uh now let's
37:42
okay uh now let's [Music]
37:43
[Music]
37:44
[Music] move to the index page and on index page
37:48
move to the index page and on index page
37:48
move to the index page and on index page I need to put a new
37:51
I need to put a new
37:51
I need to put a new action this
37:54
action this
37:55
action this AC basically will be delete
37:58
AC basically will be delete
37:58
AC basically will be delete and the parameter name is blob name as
38:01
and the parameter name is blob name as
38:01
and the parameter name is blob name as this is an HTTP get request so I have to
38:04
this is an HTTP get request so I have to
38:04
this is an HTTP get request so I have to provide the name here so also provide
38:08
provide the name here so also provide
38:08
provide the name here so also provide the name here name make it
38:13
the name here name make it
38:13
the name here name make it delete
38:16
okay let's run it and see how it look
38:20
okay let's run it and see how it look
38:20
okay let's run it and see how it look like
38:30
if I uh go to
38:33
if I uh go to
38:33
if I uh go to images so these are currently available
38:36
images so these are currently available
38:36
images so these are currently available images uh let's click on one of the file
38:39
images uh let's click on one of the file
38:39
images uh let's click on one of the file for example I want to delete this
38:42
for example I want to delete this
38:42
for example I want to delete this file let's delete it oh currently it's
38:46
file let's delete it oh currently it's
38:46
file let's delete it oh currently it's giving me an
38:49
giving me an
38:49
giving me an error okay so error is basically
38:54
error okay so error is basically
38:54
error okay so error is basically 400 basically it it is a bad request
38:58
400 basically it it is a bad request
38:58
400 basically it it is a bad request let's try to delete another one maybe
39:01
let's try to delete another one maybe
39:01
let's try to delete another one maybe the parameter name is having conflict
39:03
the parameter name is having conflict
39:03
the parameter name is having conflict okay that is fine so let's go to the
39:06
okay that is fine so let's go to the
39:06
okay that is fine so let's go to the code and see what's wrong why uh my
39:09
code and see what's wrong why uh my
39:09
code and see what's wrong why uh my action is not hitting so this one is
39:11
action is not hitting so this one is
39:11
action is not hitting so this one is fine the parameter name is fine if I go
39:14
fine the parameter name is fine if I go
39:14
fine the parameter name is fine if I go to
39:15
to
39:15
to images and click on or put a break point
39:19
images and click on or put a break point
39:19
images and click on or put a break point here oh okay so basically uh this was an
39:24
here oh okay so basically uh this was an
39:24
here oh okay so basically uh this was an HTTP post action before and validate
39:27
HTTP post action before and validate
39:27
HTTP post action before and validate anti forgery token was applied here
39:29
anti forgery token was applied here
39:29
anti forgery token was applied here that's why uh I was having an error So
39:32
that's why uh I was having an error So
39:32
that's why uh I was having an error So currently let's remove this I don't need
39:36
currently let's remove this I don't need
39:36
currently let's remove this I don't need this so let's run it again and see how
39:39
this so let's run it again and see how
39:39
this so let's run it again and see how it
39:45
works
39:47
works
39:47
works okay let's refresh this now if I click
39:52
okay let's refresh this now if I click
39:52
okay let's refresh this now if I click on delete button so now it's working
39:55
on delete button so now it's working
39:55
on delete button so now it's working fine if I check the blob name so this is
39:57
fine if I check the blob name so this is
39:57
fine if I check the blob name so this is the exactly blob name which is stored my
40:00
the exactly blob name which is stored my
40:00
the exactly blob name which is stored my inside my container Let's uh get the
40:04
inside my container Let's uh get the
40:04
inside my container Let's uh get the blob client and then delete that file if
40:07
blob client and then delete that file if
40:07
blob client and then delete that file if that exist and if I continue
40:10
that exist and if I continue
40:10
that exist and if I continue this so here you can see that the file
40:14
this so here you can see that the file
40:14
this so here you can see that the file have been uh deleted successfully so
40:16
have been uh deleted successfully so
40:16
have been uh deleted successfully so let's go to as your uh storage Explorer
40:20
let's go to as your uh storage Explorer
40:20
let's go to as your uh storage Explorer and refresh so you can see that uh the
40:24
and refresh so you can see that uh the
40:24
and refresh so you can see that uh the image have been uh deleted success
40:28
image have been uh deleted success
40:28
image have been uh deleted success sucessfully so this is how you can
40:31
sucessfully so this is how you can
40:31
sucessfully so this is how you can perform uh different uh operations for
40:35
perform uh different uh operations for
40:35
perform uh different uh operations for example getting blobs getting list of
40:38
example getting blobs getting list of
40:38
example getting blobs getting list of blobs uploading blob and then deleting
40:41
blobs uploading blob and then deleting
40:41
blobs uploading blob and then deleting blob using asp.net
40:44
blob using asp.net
40:44
blob using asp.net MVC there are uh few other options
40:48
MVC there are uh few other options
40:48
MVC there are uh few other options available uh which I don't show you for
40:51
available uh which I don't show you for
40:51
available uh which I don't show you for example you want to create a new
40:53
example you want to create a new
40:53
example you want to create a new container using uh your cop code ly I
40:58
container using uh your cop code ly I
40:58
container using uh your cop code ly I have these four containers inside my
41:01
have these four containers inside my
41:01
have these four containers inside my blob account so now I want to create
41:04
blob account so now I want to create
41:04
blob account so now I want to create another container and I will show you
41:07
another container and I will show you
41:07
another container and I will show you how you can manage this
41:10
how you can manage this
41:10
how you can manage this programmatically
41:11
programmatically
41:12
programmatically so here you have uh got your container
41:15
so here you have uh got your container
41:15
so here you have uh got your container the next option you need to call is
41:18
the next option you need to call is
41:18
the next option you need to call is container client and create if not
41:22
container client and create if not
41:22
container client and create if not exist
41:25
so basic Bally whenever you create a
41:29
so basic Bally whenever you create a
41:29
so basic Bally whenever you create a blob container client and if that
41:32
blob container client and if that
41:32
blob container client and if that container not exist then this will give
41:34
container not exist then this will give
41:34
container not exist then this will give you an error but if you call this create
41:36
you an error but if you call this create
41:37
you an error but if you call this create if not exist this will create a
41:39
if not exist this will create a
41:39
if not exist this will create a container for you if uh one container
41:41
container for you if uh one container
41:41
container for you if uh one container not exist so let's change the images to
41:45
not exist so let's change the images to
41:45
not exist so let's change the images to for example I want to say my images
41:49
for example I want to say my images
41:49
for example I want to say my images profile uh let's run this to see
41:59
now if I go to
42:03
images okay currently uh no blob
42:07
images okay currently uh no blob
42:07
images okay currently uh no blob available let's see whether a new
42:09
available let's see whether a new
42:10
available let's see whether a new account have a new container have been
42:11
account have a new container have been
42:12
account have a new container have been created or not refresh it and you can
42:14
created or not refresh it and you can
42:14
created or not refresh it and you can see that a new container have been
42:16
see that a new container have been
42:16
see that a new container have been uploaded but currently there is no file
42:19
uploaded but currently there is no file
42:19
uploaded but currently there is no file and this is my old
42:21
and this is my old
42:21
and this is my old container now uh let's upload one file
42:25
container now uh let's upload one file
42:25
container now uh let's upload one file and see whether this is is working fine
42:28
and see whether this is is working fine
42:28
and see whether this is is working fine or
42:30
not okay let's upload this save
42:34
not okay let's upload this save
42:34
not okay let's upload this save it and let's upload another file sorry
42:38
it and let's upload another file sorry
42:38
it and let's upload another file sorry for not having upload
42:41
for not having upload
42:41
for not having upload button and I will say this file save it
42:46
button and I will say this file save it
42:46
button and I will say this file save it then upload another
42:52
file okay this go of the Densel
42:57
file okay this go of the Densel
42:57
file okay this go of the Densel Washington so here you can see all
42:59
Washington so here you can see all
42:59
Washington so here you can see all operations are working
43:02
operations are working
43:02
operations are working smoothly no issue is coming and you can
43:06
smoothly no issue is coming and you can
43:06
smoothly no issue is coming and you can see how it is easy to change the
43:08
see how it is easy to change the
43:08
see how it is easy to change the container so now you can see file
43:11
container so now you can see file
43:11
container so now you can see file deleted if I see this container and you
43:16
deleted if I see this container and you
43:16
deleted if I see this container and you can
43:17
can
43:17
can see my file
43:19
see my file
43:19
see my file uploaded so there is one other thing uh
43:23
uploaded so there is one other thing uh
43:23
uploaded so there is one other thing uh that I talk
43:24
that I talk
43:25
that I talk about that was
43:27
about that was
43:27
about that was basically blob type so if you upload any
43:31
basically blob type so if you upload any
43:31
basically blob type so if you upload any file using uh Microsoft as your storage
43:34
file using uh Microsoft as your storage
43:34
file using uh Microsoft as your storage Explorer it show you different options
43:37
Explorer it show you different options
43:37
Explorer it show you different options it show you uh block blob basically this
43:40
it show you uh block blob basically this
43:40
it show you uh block blob basically this one is best for saving images or videos
43:43
one is best for saving images or videos
43:43
one is best for saving images or videos then page blob and upend blob so these
43:46
then page blob and upend blob so these
43:47
then page blob and upend blob so these are different options so in our code we
43:49
are different options so in our code we
43:49
are different options so in our code we were basically using block blog and then
43:52
were basically using block blog and then
43:52
were basically using block blog and then you can uh Target the different access
43:55
you can uh Target the different access
43:55
you can uh Target the different access tiers and here you can see
43:58
tiers and here you can see
43:58
tiers and here you can see we have hot cool cold and archive so the
44:02
we have hot cool cold and archive so the
44:02
we have hot cool cold and archive so the first one is most expensive for storing
44:05
first one is most expensive for storing
44:05
first one is most expensive for storing data on Azure and the last one is uh
44:09
data on Azure and the last one is uh
44:09
data on Azure and the last one is uh most cheaper on Azure storage account so
44:13
most cheaper on Azure storage account so
44:13
most cheaper on Azure storage account so now it depends on uh whether what is the
44:17
now it depends on uh whether what is the
44:17
now it depends on uh whether what is the requirement of your system how many
44:20
requirement of your system how many
44:20
requirement of your system how many times your data is being accessible by
44:23
times your data is being accessible by
44:23
times your data is being accessible by users so using that you can uh select
44:27
users so using that you can uh select
44:27
users so using that you can uh select this option for example let's see with
44:30
this option for example let's see with
44:30
this option for example let's see with gold and upload a
44:34
file upload this code
44:39
file currently file is
44:42
file currently file is
44:42
file currently file is uploading so now if you see uh first
44:46
uploading so now if you see uh first
44:46
uploading so now if you see uh first file was uploaded using H here and the
44:50
file was uploaded using H here and the
44:50
file was uploaded using H here and the new file is using cold tier so like this
44:53
new file is using cold tier so like this
44:53
new file is using cold tier so like this you can also uh handle your access tier
44:57
you can also uh handle your access tier
44:57
you can also uh handle your access tier you can also handle this
44:59
you can also handle this
44:59
you can also handle this programmatically uh and according to
45:01
programmatically uh and according to
45:01
programmatically uh and according to your requirement you can use different
45:03
your requirement you can use different
45:03
your requirement you can use different access tier uh to reduce your cost of
45:07
access tier uh to reduce your cost of
45:07
access tier uh to reduce your cost of aure blob storage so I think so this is
45:10
aure blob storage so I think so this is
45:10
aure blob storage so I think so this is the best option that you can use uh then
45:12
the best option that you can use uh then
45:12
the best option that you can use uh then we have different metadata properties
45:15
we have different metadata properties
45:15
we have different metadata properties for your Azure blob for example you can
45:18
for your Azure blob for example you can
45:18
for your Azure blob for example you can access the Lost modified date you can
45:22
access the Lost modified date you can
45:22
access the Lost modified date you can access the content type of The Blob that
45:25
access the content type of The Blob that
45:25
access the content type of The Blob that you uploaded and whether this is active
45:28
you uploaded and whether this is active
45:28
you uploaded and whether this is active or not you can also uh have a verion of
45:32
or not you can also uh have a verion of
45:32
or not you can also uh have a verion of your file for example you are uploading
45:34
your file for example you are uploading
45:34
your file for example you are uploading the same file uh then aure will
45:36
the same file uh then aure will
45:36
the same file uh then aure will automatically create a varion for your
45:39
automatically create a varion for your
45:39
automatically create a varion for your file you can have uh lease date you can
45:42
file you can have uh lease date you can
45:42
file you can have uh lease date you can have remaining days so you can also add
45:45
have remaining days so you can also add
45:45
have remaining days so you can also add policies for your file where you can
45:49
policies for your file where you can
45:49
policies for your file where you can Define how many days this file should
45:52
Define how many days this file should
45:52
Define how many days this file should reside on as your blob storage account
45:55
reside on as your blob storage account
45:55
reside on as your blob storage account so these are a lot of options available
45:57
so these are a lot of options available
45:58
so these are a lot of options available and you can explore them on Microsoft
46:01
and you can explore them on Microsoft
46:02
and you can explore them on Microsoft website so uh this was our code uh let's
46:06
website so uh this was our code uh let's
46:06
website so uh this was our code uh let's push this
46:09
code to as your blob storage account so
46:12
code to as your blob storage account so
46:12
code to as your blob storage account so I will say uh this
46:16
I will say uh this
46:16
I will say uh this performing upload delete and list
46:22
performing upload delete and list
46:22
performing upload delete and list operations
46:23
operations
46:23
operations on blob storage okay
46:27
on blob storage okay
46:27
on blob storage okay uh let's push this code so that you guys
46:29
uh let's push this code so that you guys
46:29
uh let's push this code so that you guys can access
46:32
can access
46:32
can access it okay code
46:35
it okay code
46:35
it okay code pushed successfully oh still pushing
46:39
pushed successfully oh still pushing
46:39
pushed successfully oh still pushing okay that's it uh now if I show you the
46:43
okay that's it uh now if I show you the
46:43
okay that's it uh now if I show you the repository let's refresh
46:47
it and the latest episode is episode
46:51
it and the latest episode is episode
46:52
it and the latest episode is episode three so here if you are interested to
46:55
three so here if you are interested to
46:55
three so here if you are interested to explore this code or you want to perform
46:58
explore this code or you want to perform
46:58
explore this code or you want to perform uh or you want to play with this code
47:00
uh or you want to play with this code
47:00
uh or you want to play with this code you can access this rappo and you can
47:03
you can access this rappo and you can
47:03
you can access this rappo and you can clone this code and you can use this for
47:06
clone this code and you can use this for
47:06
clone this code and you can use this for your learning purpose and don't uh uh
47:11
your learning purpose and don't uh uh
47:11
your learning purpose and don't uh uh don't forget to give me a store if you
47:13
don't forget to give me a store if you
47:13
don't forget to give me a store if you like my repo and also share with others
47:17
like my repo and also share with others
47:17
like my repo and also share with others if they want to learn uh this as
47:21
if they want to learn uh this as
47:21
if they want to learn uh this as well and let's move to the slides
47:28
well and let's move to the slides
47:28
well and let's move to the slides so now if I see uh media and content
47:32
so now if I see uh media and content
47:32
so now if I see uh media and content storage so basically I was uh working
47:36
storage so basically I was uh working
47:36
storage so basically I was uh working with this type of real world use case so
47:39
with this type of real world use case so
47:39
with this type of real world use case so you can use any of
47:41
you can use any of
47:41
you can use any of them so that's was it from my side if
47:45
them so that's was it from my side if
47:46
them so that's was it from my side if you are interested to learn more about
47:48
you are interested to learn more about
47:48
you are interested to learn more about and please uh please register with our
47:53
and please uh please register with our
47:53
and please uh please register with our Islamabad
47:55
Islamabad
47:55
Islamabad chapter so basically inside Islam watch
47:58
chapter so basically inside Islam watch
47:58
chapter so basically inside Islam watch chapter currently we are hosting this uh
48:01
chapter currently we are hosting this uh
48:01
chapter currently we are hosting this uh as your show so you can subscribe and
48:05
as your show so you can subscribe and
48:05
as your show so you can subscribe and you can see the latest coming
48:09
shows oh this is
48:14
shows oh this is
48:14
shows oh this is uh and thank you uh for being the part
48:17
uh and thank you uh for being the part
48:17
uh and thank you uh for being the part of cop Corner Islamabad chapter uh and I
48:21
of cop Corner Islamabad chapter uh and I
48:21
of cop Corner Islamabad chapter uh and I hope see you in the next show next
48:24
hope see you in the next show next
48:24
hope see you in the next show next Saturday have a good day
48:28
Saturday have a good day
48:28
Saturday have a good day [Music]


