SlideShare a Scribd company logo
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
1.11
1.12
1.13
1.14
1.15
1.16
Table	of	Contents
Overview
Introduction
Requirements
Create	Resource	Group
Azure	Mobile	Services	(Part	1)
Azure	Mobile	Services	(Part	2)
Azure	Mobile	Services	(Part	3)
Create	Class	&	Install	Nuget	(Part	1)
Create	Class	&	Install	Nuget	(Part	2)
Create	Class	&	Install	Nuget	(Part	3)
Create	Member	(Part	1)
Create	Member	(Part	2)
Update	Member
List	&	Search	Member
Create	MemberCell
Authentication	(Login)
References
1
Xamarin.Forms	Advanced	Tutorial
Introduction
About	this	tutorial
Learn	Xamarin	by	Creating	Real	World	Cross-Platform	Apps
Learn	to	build	both	Android	and	iOS	Apps	in	C#.	Also	understand	how	code
sharing	works	on	the	Xamarin	platform.
Target	Audience
Those	who	want	to	apply	their	existing	C#	knowledge	to	create	multi-platform
mobile	apps.
Prepared	by
Eng	Soon	Cheah	,	Microsoft	MVP
@CheahEngSoon
Introduction
2
Requirements
Visual	Studio	2015	and	above
https://www.visualstudio.com/
Visual	Studio	Emulator	for	Android
https://www.visualstudio.com/vs/msft-android-emulator/
Microsoft	Azure	Account
https://azure.microsoft.com/en-us/
Requirements
3
Create	Resource	Group
1.	 Go	to	Your	Microsoft	Azure	Portal,	login	with	your	Microsoft	account	(outlook,
hotmail	&	live).
2.	 On	your	left	hand	side	pane,	go	to	select	"Resources	groups"	.
1.	 Select	"Add"	on	your	top	of	the	Pane.
Create	Resource	Group
4
4.
Enter	your	Resources	Group	information	and	Click	"Create".	
Create	Resource	Group
5
Azure	Mobile	Services	(Part	1)
1.	 Go	to	your	Left	Pane,	Select	"	+	New".
1.	 Select	"Web	+	Mobile	"	,	and	"Mobile	App"
3
Azure	Mobile	Services	(Part	1)
6
3.Enter	Your	Mobile	App	information	and	Resources	Group	select	the	Resource
Group	that	you	had	create.	After	fill	in	information	,	please	click	"Create".
Azure	Mobile	Services	(Part	1)
7
4.Your	Mobile	App	Dashboard	Success	create.
5.In	the	Search	Pane,	Search	for	"Easy	tables"	and	Select	"Easy	tables".
6.
6.After	select	"Easy	Tables",	Select	"Need	to	configure	Easy	Tables/Easy	APIs
-	Click	here	to	continue	->"
Azure	Mobile	Services	(Part	1)
8
6.
7.Follow	the	Instruction	,	Select	"Connect	a	database"	&	Select	"Add".
8.Configure	the	Data	Connection	Information.
Azure	Mobile	Services	(Part	1)
9
Azure	Mobile	Services	(Part	2)
1.	 Select	"Connection	String"	&	Click	"OK"
1.	 Check/	Tick	[	/	]	I	acknowledge	that	this	will	overwrite	all	site	contents.	&
Click	"Initialize	App".
3.
Now	you	create	your	database	table.	Select	"Add"	and	Enter	Your	Table	Name
and	Click	"OK".
Azure	Mobile	Services	(Part	2)
10
4.Select	your	"Table	(Member)"	,	and	Select	"Manage	Schema".
Azure	Mobile	Services	(Part	2)
11
Azure	Mobile	Services	(	Part	4)
1.	 Select	"Add	Column",	add	3	column	"username","password"	&
"membername".
Azure	Mobile	Services	(Part	3)
12
Create	Class	and	Install	Nuget	(	Part	1)
1.	 Open	your	Visual	Studio	2015	and	above.
2.	 Select	"Cross	Platform",	"BlankApp(Xamarin.FormsPortable)"	and	name
your	Xamarin	Project.
3.	 Your	Xamarin	project	success	created	and	on	your	right	side.
4.	 Go	to	your	Solution	Solution	'GitBookDemo',	Right	Click	and	select
"Manage	Nuget	Packages	for	Solution".
5.
Create	Class	&	Install	Nuget	(Part	1)
13
1.	 Select	the	First	Nuget	"Newtonsoft.Json"	and	Chcek[/]	all	the	Project	and
Click	"Install".
6.
Search	for	another	Nuget	"Microsoft.Azure.Mobile.Client"	&	check	all	the
project	like	previous	step.	Do	the	same	step	for
"Microsoft.Azure.Mobile.Client.SQLiteStore".
Create	Class	&	Install	Nuget	(Part	1)
14
Create	Class	&	Install	Nuget	(Part	1)
15
Create	Class	&	Install	Nuget	(Part	2)
1.	 Go	to	"GitBookDemo	(Portable)"	,	Right	Click	>	"Add"	>	"Class"	&	name
your	class	as	"Constants.cs".
2.
Write	the	Class	and	replace	the	Link	with	your	Azure	Mobile	Services	URL	that
you	had	create	previously.
Create	Class	&	Install	Nuget	(Part	2)
16
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
namespace	GitBookDemo
{
				public	static	class	Constants
				{
								public	static	string	ApplicationURL	=	@"https://gitbook.
azurewebsites.net";
				}
}
Create	Class	&	Install	Nuget	(Part	2)
17
Create	Class	&	Install	Nuget	(Part	3)
1.	 Create	another	Class,	name	as	"Member.cs"	and	write	the	code	in	the	Class.
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
namespace	GitBookDemo
{
				public	class	Member
				{
						[JsonProperty(PropertyName="id")]
						public	string	ID	{	get;	set;	}
								[JsonProperty(PropertyName	="username")]
								public	string	username	{	get;	set;	}
								[JsonProperty(PropertyName	="password")]
								public	string	password	{	get;	set;	}
								[JsonProperty(PropertyName	="membername")]
								public	string	membername	{	get;	set;	}
				}
}
1.	 Create	another	Class,	name	as	"MemberManager.cs"
using	Microsoft.WindowsAzure.MobileServices;
using	System;
using	System.Collections.Generic;
using	System.Diagnostics;
using	System.Linq;
using	System.Linq.Expressions;
using	System.Text;
Create	Class	&	Install	Nuget	(Part	3)
18
using	System.Threading.Tasks;
namespace	GitBookDemo
{
				public	class	MemberManager
				{
								IMobileServiceTable<Member>	usersTable;
								MobileServiceClient	client;
								public	MemberManager()
								{
												client	=	new	MobileServiceClient(Constants.Applicati
onURL);
												usersTable	=	client.GetTable<Member>();
								}
								public	async	Task<Member>	GetUserWhere(Expression<Func<M
ember,	bool>>	linq)
								{
												try
												{
																List<Member>	newUser	=	await	usersTable.Where(li
nq).Take(1).ToListAsync();
																return	newUser.First();
												}
												catch	(MobileServiceInvalidOperationException	msioe)
												{
																Debug.WriteLine(@"INVALID	{0}",	msioe.Message);
												}
												catch	(Exception	e)
												{
																Debug.WriteLine(@"ERROR	{0}",	e.Message);
												}
												return	null;
								}
								public	async	Task<Member>	SaveGetUserAsync(Member	user)
								{
												if	(user.ID	==	null)
Create	Class	&	Install	Nuget	(Part	3)
19
{
																await	usersTable.InsertAsync(user);
												}
												else
												{
																await	usersTable.UpdateAsync(user);
												}
												try
												{
																List<Member>	newUser	=	await	usersTable.Where(us
erSelect	=>	userSelect.username	==	user.username).ToListAsync();
																return	newUser.First();
												}
												catch	(MobileServiceInvalidOperationException	msioe)
												{
																Debug.WriteLine(@"INVALID	{0}",	msioe.Message);
												}
												catch	(Exception	e)
												{
																Debug.WriteLine(@"ERROR	{0}",	e.Message);
												}
												return	null;
								}
								public	async	Task<List<Member>>	ListUserWhere(Expression
<Func<Member,	bool>>	linq)
								{
												try
												{
																return	new	List<Member>
																(
																				await	usersTable.Where(linq).ToListAsync()
																);
												}
												catch	(MobileServiceInvalidOperationException	msioe)
												{
																Debug.WriteLine(@"INVALID	{0}",	msioe.Message);
												}
Create	Class	&	Install	Nuget	(Part	3)
20
catch	(Exception	e)
												{
																Debug.WriteLine(@"ERROR	{0}",	e.Message);
												}
												return	null;
								}
				}
}
Create	Class	&	Install	Nuget	(Part	3)
21
Create	Member	(Part	1)
1.	 Right	Click	"GitBookDemo(Portable)"	,	Select	"Add"	>	Select	"New	Item"	.
2.2.
Create	Member	(Part	1)
22
2.Select	"Forms	Xaml	Page"	and	name	the	page	"AddMember.xaml".
Create	Member	(Part	1)
23
Create	Member	(Part	2)
1.Go	to	"AddMember.xaml",	Place	the	Entry	(Textbox)	and	Button	and	Clicked
Event
<StackLayout>
				<Entry	Placeholder="Username"	x:Name="txtusername"/>
				<Entry	Placeholder="Password"	x:Name="txtpassword"/>
				<Button	Text="Add	Member"	x:Name="addButton"	Clicked="OnAdd"
/>
		</StackLayout>
2.Then	go	to	"AddMember.xaml.cs"	and	place	the	code.
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
using	Xamarin.Forms;
namespace	GitBookDemo
{
				public	partial	class	AddMember	:	ContentPage
				{
								private	MemberManager	manager;
								public	AddMember()
								{
												InitializeComponent();
												manager	=	new	MemberManager();
								}
Create	Member	(Part	2)
24
async	Task	AddNewMember(Member	member)
								{
												Member	userResponse	=	await	manager.SaveGetUserAsync
(member);
												Application.Current.Properties["user"]	=	userRespons
e;
								}
								public	async	void	OnAdd(object	sender,	EventArgs	e)
								{
												string	username	=	txtusername.Text;
												string	password	=	txtpassword.Text;
									if(!string.IsNullOrEmpty(username)&&!!string.IsNullOrEm
pty(password))
												{
																var	member	=	new	Member
																{
																				username	=	username,
																				password	=	password
																};
																await	AddNewMember(member);
																await	Navigation.PushModalAsync(new	MemberProfil
e());
																await	Navigation.PopAsync();
												}
								}
				}
}
Create	Member	(Part	2)
25
Update	Member
1.	 Add	another	page	"MemberProfile.xaml"	and	place	the	code.
<StackLayout>
				<Entry	x:Name="txtMemberName"/>
				<Button	x:Name="Save"	Clicked="Save_Clicked"/>
		</StackLayout>
2.Go	to	MemberProfile.xaml.cs	and	place	the	code.
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
using	Xamarin.Forms;
namespace	GitBookDemo
{
				public	partial	class	MemberProfile	:	ContentPage
				{
								private	Member	currentUser;
								MemberManager	manager;
								public	MemberProfile()
								{
												InitializeComponent();
												manager	=	new	MemberManager();
												currentUser	=	(Member)Application.Current.Properties
["user"];
												loadData();
								}
Update	Member
26
void	loadData()
								{
										if(currentUser!=null)
												{
																if(!string.IsNullOrEmpty(currentUser.membername)
)
																{
																				txtMemberName.Text	=	currentUser.membername;
																}
												}
								}
								async	Task	UpdateUser(Member	member)
								{
												Member	userResponse	=	await	manager.SaveGetUserAsync
(member);
												Application.Current.Properties["user"]	=	userRespons
e;
								}
								async	void	Save_Clicked(object	sender,	EventArgs	e)
								{
												string	membername	=	this.txtMemberName.Text;
												if(string.IsNullOrEmpty(membername))
												{
																await	DisplayAlert("Error",	"Fill	blank	fields",
	"Accept");
												}
												else
												{
																var	member	=	new	Member
																{
																				ID=currentUser.ID,
																				username=currentUser.username,
																				password=currentUser.password,
																				membername=membername
																};
																await	UpdateUser(member);
																await	DisplayAlert("Error",	"Success	Update",	"A
Update	Member
27
ccept");
												}
								}
				}
}
Update	Member
28
List	&	Search	Member
1.	 Create	ListMember.xaml	and	place	the	code	in	Content
<StackLayout>
				<SearchBar	x:Name="searchBar"	Placeholder="Search	Route"	Tex
tChanged="OnSearch"></SearchBar>
				<ListView	x:Name="memberListView"	VerticalOptions="FillAndEx
pand"
					HorizontalOptions="FillAndExpand"	HeightRequest="500"	RowHe
ight="100"	BackgroundColor="White"	
					SeparatorColor="#009688"	IsPullToRefreshEnabled="True"	></L
istView>
		</StackLayout>
2.Place	the	code	in	ListMember.xaml.cs
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
using	Xamarin.Forms;
namespace	GitBookDemo
{
				public	partial	class	ListMember	:	ContentPage
				{
								private	Member	currentUser;
								private	List<Member>	memberList;
								private	MemberManager	memberManager;
								public	ListMember()
								{
												InitializeComponent();
List	&	Search	Member
29
currentUser	=	(Member)Application.Current.Properties
["user"];
												memberList	=	new	List<Member>();
												memberManager	=	new	MemberManager();
												memberListView.ItemTemplate	=	new	DataTemplate(typeo
f(MemberCell));
												LoadMember();
								}
								private	async	void	LoadMember()
								{
												memberList	=	await	memberManager.ListUserWhere(userS
elect	=>	userSelect.membername	!=	currentUser.membername);
												if(memberList.Count!=0)
												{
																memberListView.ItemsSource	=	memberList;
												}
								}
								private	void	OnSearch(object	sender,	TextChangedEventArg
s	e)
								{
												if(!string.IsNullOrWhiteSpace(e.NewTextValue))
												{
																memberListView.ItemsSource=
																				memberList.Where(
																						userSelect=>userSelect.membername.ToLower(
).Contains(e.NewTextValue.ToLower()));
												}
												else
												{
																memberListView.ItemsSource	=	memberList;
												}
								}
				}
List	&	Search	Member
30
}
List	&	Search	Member
31
Create	MemberCell
1.	 Now	go	to	"GitBookDemo	(Portable)"	>	Select	"Add"	>	Select	"New	Item"	>
Select	"Forms	Xaml	View"	and	Name	MemberCell.xaml
2.Place	the	code	in	MemberCell.xaml
Create	MemberCell
32
<?xml	version="1.0"	encoding="UTF-8"?>
<ViewCell		xmlns="http://xamarin.com/schemas/2014/forms"	
											xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml
"	
											x:Class="GitBookDemo.MemberCell">
		<StackLayout	Orientation="Horizontal"		Spacing="10"	Background
Color="White"	Padding="10">
				<Image	x:Name="imageRoute"	Source="profile.jpg"	Aspect="Aspe
ctFill"	WidthRequest="75"	></Image>
				<StackLayout	Orientation="Vertical"	VerticalOptions="Center"
>
						<Label	x:Name="membername"	TextColor="Blue"	VerticalOption
s="Center"	FontSize="20"></Label>				
				</StackLayout>
		</StackLayout>
</ViewCell	>
3.Place	the	backend	Code	in	MemberCell.xaml.cs
Create	MemberCell
33
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
using	Xamarin.Forms;
namespace	GitBookDemo
{
				public	partial	class	MemberCell	:	ViewCell
				{
								public	MemberCell()
								{
												InitializeComponent();
												membername.SetBinding(Label.TextProperty,	new	Bindin
g("membername"));
								}
				}
}
Create	MemberCell
34
Authentication	(Login)
1.	 Create	a	LoginPage.xaml	(Forms	Xaml	Page)	and	place	the	code	in	Content
<StackLayout>
				<Entry	x:Name="txtusername"	Placeholder="Username"/>
				<Entry	x:Name="txtpassword"	Placeholder="Password"/>		
				<Button	x:Name="signInButton"	Text="SignIn"	Clicked="SignIn_
Clicked"/>
		</StackLayout>
2.Place	the	backend	code	LoginPage.xaml.cs
using	System;
using	System.Collections.Generic;
using	System.Linq;
using	System.Text;
using	System.Threading.Tasks;
using	Xamarin.Forms;
namespace	GitBookDemo
{
				public	partial	class	Login	:	ContentPage
				{
								private	Member	currentUser;
								private	MemberManager	memberManager;
								public	Login()
								{
												InitializeComponent();
												memberManager	=	new	MemberManager();
								}
Authentication	(Login)
35
async	void	SignIn_Clicked(object	sender,	EventArgs	e)
								{
												string	username	=	this.txtusername.Text;
												string	password	=	this.txtpassword.Text;
												var	user	=	new	Member	{	username	=	username,	passwor
d	=	password	};
												if(!string.IsNullOrEmpty(username)&&!string.IsNullOr
Empty(password))
												{
																Member	userResponse	=	await	memberManager.GetUse
rWhere(userSelect	=>	userSelect.username	==	user.username	&&	use
rSelect.password	==	user.password);
																if	(userResponse	!=	null	&&	userResponse.usernam
e.Equals(username,	StringComparison.Ordinal)	&&	userResponse.pas
sword.Equals(password,	StringComparison.Ordinal))
																{
																				Application.Current.Properties["user"]	=	use
rResponse;
																				Application.Current.MainPage	=	new	Navigatio
nPage(new	ListMember());
																}
																else
																{
																				await	DisplayAlert("Incorrect",	"Your	userna
me	or	password	is	incorrect,	please	try	again.",	"Close");
																}
												}
												else
												{
																await	DisplayAlert("Incorrect",	"The	fields	user
name	or	Password	can't	be	empty,	please	insert	valid	values.",	"
Close");
												}
Authentication	(Login)
36
}
				}
}
1.	 Go	to	App.cs	,	place	this	code	to	set	Main	Page	to	Login	Page.
	MainPage	=	new	NavigationPage(new	Login());
Authentication	(Login)
37
References
Problems	&	Solutions	after	installation	Xamarin	in	Visual	Studio	2015	and
above
Part	1:
http://cheahengsoon.weebly.com/blog/unable-to-install-latest-xamarin-android-
nuget-visual-studio-solutionsc
Part	2:
http://cheahengsoon.weebly.com/blog/solve-javalangobjectclass-in-xamarin
Xamarin.Forms	-	Page,Layouts	and	Views
https://channel9.msdn.com/Blogs/MVP-Windows-Dev/XamarinFormsBeginner
Xamarin.Forms	-	Plugin
https://channel9.msdn.com/Blogs/MVP-Windows-Dev/XamarinForms--Plugin
Xamarin	+	Azure
Create	a	no	code	backend	with	Easy	Tables
http://bit.ly/AzureXHOL1
Create	a	Scalable	.NET	Backend	&	Authenticate	Users
http://bit.ly/AzureXHOL2
Microsoft	Virtual	Academy
https://mva.microsoft.com/en-US/training-courses/xamarin-for-absolute-beginners-
16182?l=fPHWqptJC_5705846048
Xamarin	E-Book
https://developer.xamarin.com/guides/xamarin-forms/creating-mobile-apps-
xamarin-forms/
Source	Code
References
38
https://github.com/cheahengsoon/GitBookDemo1
References
39

More Related Content

PDF
Xamarin.Forms Hands On Lab (Intermediate)
PPTX
Learn .NET Core - UWP & Xamarin.Forms
PDF
Building Canvas Apps with ASP.NET and Azure
PPTX
From 0 to Deployed
PPTX
Your first application with Xamarin.Forms
PDF
Intégrez vos applications métiers dans Microsoft Teams
PPTX
Getting started with Xamarin Forms
PPTX
Integrating Web Apps with Canvas - Salesforce1 World Tour
Xamarin.Forms Hands On Lab (Intermediate)
Learn .NET Core - UWP & Xamarin.Forms
Building Canvas Apps with ASP.NET and Azure
From 0 to Deployed
Your first application with Xamarin.Forms
Intégrez vos applications métiers dans Microsoft Teams
Getting started with Xamarin Forms
Integrating Web Apps with Canvas - Salesforce1 World Tour

What's hot (20)

PPTX
Introducing mono & xamarin
PPTX
Intro to Building Mobile Apps with Xamarin
PPTX
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
PPTX
Your First Adobe Flash Application for Android
PPT
Making Money with Adobe AIR
PDF
How does flutter cuts app development cost?
PDF
Benefits of xamarin
PPTX
Introduction to Xamarin
PPTX
Developing AIR for Mobile with Flash Professional CS5.5
PDF
Appium Interview Questions and Answers | Edureka
PDF
App Development: Create Cross Platform Mobile App with Just 6 Steps
PDF
Dreamwares: Lightning Experience
PPTX
Xamarin.Forms (Northern VA Mobile C# Developers Group 8/13/14)
PDF
Diving Into Xamarin.Forms
PDF
Mobile gaming - 10 tips to optimize your in-app advertising
PPTX
DOCX
Cordova vs xamarin vs titanium
PPTX
PWAs overview
PPTX
Native Mobile Apps, Xamarin, and PhoneGap
PPTX
An end-to-end experience of Windows Phone 7 development (Part 1)
Introducing mono & xamarin
Intro to Building Mobile Apps with Xamarin
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
Your First Adobe Flash Application for Android
Making Money with Adobe AIR
How does flutter cuts app development cost?
Benefits of xamarin
Introduction to Xamarin
Developing AIR for Mobile with Flash Professional CS5.5
Appium Interview Questions and Answers | Edureka
App Development: Create Cross Platform Mobile App with Just 6 Steps
Dreamwares: Lightning Experience
Xamarin.Forms (Northern VA Mobile C# Developers Group 8/13/14)
Diving Into Xamarin.Forms
Mobile gaming - 10 tips to optimize your in-app advertising
Cordova vs xamarin vs titanium
PWAs overview
Native Mobile Apps, Xamarin, and PhoneGap
An end-to-end experience of Windows Phone 7 development (Part 1)
Ad

Similar to Xamarin.Forms Hands On Lab (Advanced) (20)

PPTX
Cross Platform Mobile Technologies
ODP
dot net
PPTX
Android Development recipes with java.pptx
PDF
Cordova Mobile Application Developer Certification
PDF
madanResume
DOCX
Mahesh_Dimble
PDF
Top Cross Platform Mobile App Development Frameworks
PPTX
flutter framework presentation android app development
PDF
flutter framework android app development presentation with projects images i...
DOC
CV_Sayani_Updated
PDF
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
DOC
Net, MVC 3+ years Experience
PDF
IBM MobileFirst Platform v7.0 pot intro v0.1
PDF
IBM MobileFirst Platform v7.0 Pot Intro v0.1
DOCX
Ravi Sahu Profile
PDF
Why is Flutter now Trendsetter in mobile app development .
PPTX
Android Web app
DOC
Industrial Summer Training for MCA/BCA/BE/B-Tech Students
PPTX
Mobile Application Development class 001
PDF
Building Cross-Platform Mobile Apps
Cross Platform Mobile Technologies
dot net
Android Development recipes with java.pptx
Cordova Mobile Application Developer Certification
madanResume
Mahesh_Dimble
Top Cross Platform Mobile App Development Frameworks
flutter framework presentation android app development
flutter framework android app development presentation with projects images i...
CV_Sayani_Updated
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
Net, MVC 3+ years Experience
IBM MobileFirst Platform v7.0 pot intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1
Ravi Sahu Profile
Why is Flutter now Trendsetter in mobile app development .
Android Web app
Industrial Summer Training for MCA/BCA/BE/B-Tech Students
Mobile Application Development class 001
Building Cross-Platform Mobile Apps
Ad

More from Cheah Eng Soon (20)

PPTX
Microsoft Defender for Endpoint
PPTX
Azure Active Directory - Secure and Govern
PPTX
Microsoft Zero Trust
PPTX
MEM for OnPrem Environments
PPTX
Microsoft Threat Protection Automated Incident Response
PDF
Azure Penetration Testing
PDF
Azure Penetration Testing
PPTX
Microsoft Threat Protection Automated Incident Response Demo
PPTX
Microsoft Secure Score Demo
PPTX
Microsoft Cloud App Security Demo
PPTX
M365 Attack Simulation Demo
PPTX
Cloud Security Demo
PPTX
Azure Active Directory - External Identities Demo
PPTX
Azure WAF
PPTX
Azure Weekend 2020 Build Malaysia Bus Uncle Chatbot
PPTX
Microsoft Azure的20大常见安全漏洞与配置错误
PDF
20 common security vulnerabilities and misconfiguration in Azure
PPTX
Integrate Microsoft Graph with Azure Bot Services
PPTX
Azure Sentinel with Office 365
PPTX
3 Steps Integrate Microsoft Graph with Azure Bot Services
Microsoft Defender for Endpoint
Azure Active Directory - Secure and Govern
Microsoft Zero Trust
MEM for OnPrem Environments
Microsoft Threat Protection Automated Incident Response
Azure Penetration Testing
Azure Penetration Testing
Microsoft Threat Protection Automated Incident Response Demo
Microsoft Secure Score Demo
Microsoft Cloud App Security Demo
M365 Attack Simulation Demo
Cloud Security Demo
Azure Active Directory - External Identities Demo
Azure WAF
Azure Weekend 2020 Build Malaysia Bus Uncle Chatbot
Microsoft Azure的20大常见安全漏洞与配置错误
20 common security vulnerabilities and misconfiguration in Azure
Integrate Microsoft Graph with Azure Bot Services
Azure Sentinel with Office 365
3 Steps Integrate Microsoft Graph with Azure Bot Services

Recently uploaded (20)

PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
MYSQL Presentation for SQL database connectivity
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Approach and Philosophy of On baking technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Per capita expenditure prediction using model stacking based on satellite ima...
Advanced methodologies resolving dimensionality complications for autism neur...
The AUB Centre for AI in Media Proposal.docx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
sap open course for s4hana steps from ECC to s4
Programs and apps: productivity, graphics, security and other tools
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Network Security Unit 5.pdf for BCA BBA.
MYSQL Presentation for SQL database connectivity
NewMind AI Weekly Chronicles - August'25 Week I
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Approach and Philosophy of On baking technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx

Xamarin.Forms Hands On Lab (Advanced)