SlideShare a Scribd company logo
1 of 20
Download to read offline
Working With the DNN
Service Framework

Saturday, October 19, 13
Working With the DNN
Service Framework

Saturday, October 19, 13
THANKS TO ALL OF OUR GENEROUS
SPONSORS!

Saturday, October 19, 13
Gravity Works DNNCon Contest
#gwDNNContest
First Place: $100 gift card to Best Buy Runners Up:
Two $25 gift cards ThinkGeek
2 Steps to Win:
1) Follow Gravity Works Design & Development on Twitter
@gravityworksdd
2) Complete the 3 challenges announced from our account throughout the day &
submit your visual proof by tweeting photos to @gravityworksdd with the
hashtag #gwDNNContest
Last entry by 4pm

Winners announced & prizes awarded at Closing Ceremonies

Saturday, October 19, 13
Gravity Works DNNCon Contest
#gwDNNContest
First Place: $100 gift card to Best Buy Runners Up:
Two $25 gift cards ThinkGeek
2 Steps to Win:
1) Follow Gravity Works Design & Development on Twitter
@gravityworksdd
2) Complete the 3 challenges announced from our account throughout the day &
submit your visual proof by tweeting photos to @gravityworksdd with the
hashtag #gwDNNContest
Last entry by 4pm

Winners announced & prizes awarded at Closing Ceremonies

Saturday, October 19, 13
THANKS TO ALL OF OUR GENEROUS
SPONSORS!

Saturday, October 19, 13
The Old Way

http://ditchnet.org/httpclient/
http://fiddler2.com/
http://discover-devtools.codeschool.com/
http://msdn.microsoft.com/en-us/library/ms973893.aspx
Saturday, October 19, 13
The Old Way
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://schemas.xmlsoap.org/soap/envelope/"
targetNamespace="http://schemas.xmlsoap.org/soap/envelope/">
<!-- Envelope, header and body -->
<xs:element name="Envelope" type="tns:Envelope" />
<xs:complexType name="Envelope" >
<xs:sequence>
<xs:element ref="tns:Header" minOccurs="0" />
<xs:element ref="tns:Body" minOccurs="1" />
<xs:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##other"
processContents="lax" />
</xs:complexType>

http://ditchnet.org/httpclient/
http://fiddler2.com/
http://discover-devtools.codeschool.com/
http://msdn.microsoft.com/en-us/library/ms973893.aspx
Saturday, October 19, 13
Same Origin Policy

http://en.wikipedia.org/wiki/Same-origin_policy
http://www.html5rocks.com/en/tutorials/cors/
http://en.wikipedia.org/wiki/List_of_HTTP_header_fields
http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api
Saturday, October 19, 13
Same Origin Policy
The policy permits scripts running on pages originating
from the same site—a combination of scheme, hostname,
and port number—to access each other's methods and
properties with no specific restrictions, but prevents
access to most methods and properties across pages on
different sites.
Same-origin policy also applies to XMLHttpRequest and to
robots.txt.
context.Response.AddHeader("Access-Control-Allow-Origin", "*");

http://en.wikipedia.org/wiki/Same-origin_policy
http://www.html5rocks.com/en/tutorials/cors/
http://en.wikipedia.org/wiki/List_of_HTTP_header_fields
http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api
Saturday, October 19, 13
Web API

http://www.asp.net/web-api
http://james.newtonking.com/json
http://odetocode.com/blogs/scott/
http://haacked.com/
Saturday, October 19, 13
Web API

public class RouteMapper : IServiceRouteMapper
{
public void RegisterRoutes(IMapRoute mapRouteManager)
{
mapRouteManager.MapHttpRoute("DNNService", "default",
"{controller}/{action}", new[] { "DNNService" });
mapRouteManager.MapHttpRoute("DNNService", "GetUser",
"{controller}/{action}/{portalId}/{userId}", new[] { "DNNService" });
mapRouteManager.MapHttpRoute("DNNService", "GetUsers",
"{controller}/{action}/portalId}", new[] { "DNNService" });
}
}

http://www.asp.net/web-api
http://james.newtonking.com/json
http://odetocode.com/blogs/scott/
http://haacked.com/
Saturday, October 19, 13
DNN Context

http://www.github.com/gravityworks
https://bitbucket.org/gravityworks
Saturday, October 19, 13
DNN Context
[AllowAnonymous]
[HttpGet]
public HttpResponseMessage GetUsers(int portalId)
{
var allUsers = DotNetNuke.Entities.Users.UserController.GetUsers(portalId);
var allMappedUsers = new List<UserInfoMap>();
foreach (UserInfo item in allUsers)
{
allMappedUsers.Add(new UserInfoMap(item));
}
return Request.CreateResponse(HttpStatusCode.OK, allMappedUsers);
}
[AllowAnonymous]
[HttpGet]
public HttpResponseMessage ChangePassword(int portalId, int userId, string password,
string newValue)
{
UserInfo user = DotNetNuke.Entities.Users.UserController.GetUserById(portalId, userId);
var result = new
DotNetNuke.Security.Membership.AspNetMembershipProvider().ChangePassword(user, password,
newValue);
DotNetNuke.Entities.Users.UserController.UpdateUser(portalId, user);
return Request.CreateResponse(HttpStatusCode.OK, result);
}

http://www.github.com/gravityworks
https://bitbucket.org/gravityworks
Saturday, October 19, 13
Knockout

http://www.knockoutjs.com
http://learn.knockoutjs.com/
http://opendata.socrata.com/resource/2brv-dhpz.json?
http://bit.ly/15SaKoT
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/DEV361
Saturday, October 19, 13
Knockout
<table class="table" data-bind="visible: Entrys().length>0">
<thead>
<tr>
<th>Name</th>
<th>Status</th>
<th>Pollutants</th>
<th>Zip Code</th>
<th>Score</th>
</tr>
</thead>
<!--Iterate through an observableArray using foreach-->
<tbody data-bind="foreach: Entrys">
<tr>
<td><span data-bind="text: name"></span></td>
<td><span data-bind="text: status"></span></td>
<td><span data-bind="text: pollutants"></span></td>
<td><span data-bind="text: zipcode"></span></td>
<td><span data-bind="text: score"></span></td>
</tr>
</tbody>
</table>

http://www.knockoutjs.com
http://learn.knockoutjs.com/
http://opendata.socrata.com/resource/2brv-dhpz.json?
http://bit.ly/15SaKoT
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/DEV361
Saturday, October 19, 13
Angular

http://angularjs.org/
http://www.youtube.com/watch?v=i9MHigUZKEM
http://bit.ly/17QgEJ2
http://bit.ly/19vB70M
http://www.slideshare.net/gravityworksdd/
Saturday, October 19, 13
Angular
<div ng-app>
<div ng-controller="EntryCtrl">
<table>
<thead>
<tr>
<th>Name</th>
<th>Status</th>
<th>Pollutants</th>
<th>Zip Code</th>
<th>Score</th>
</tr>
</thead>
<tbody ng-repeat="entry in entrys">
<tr>
<td>{{entry.name}}</td>
<td>{{entry.status}}</td>
<td>{{entry.pollutants}}</td>
<td>{{entry.zipcode}}</td>
<td>{{entry.score}}</td>
</tr>
</tbody>
</table>
</div>
</div>

http://angularjs.org/
http://www.youtube.com/watch?v=i9MHigUZKEM
http://bit.ly/17QgEJ2
http://bit.ly/19vB70M
http://www.slideshare.net/gravityworksdd/
Saturday, October 19, 13
Jeff Mcwherter
Partner & Director of Development

jeff@gravityworksdesign.com
@jmcw

Saturday, October 19, 13
Jeff Mcwherter
Partner & Director of Development

jeff@gravityworksdesign.com
@jmcw

Saturday, October 19, 13

More Related Content

Similar to DNN Service Framework Working With

From Portals to platforms
From Portals to platformsFrom Portals to platforms
From Portals to platformsTim Sherratt
 
Harnessing the Power of the Web via R Clients for Web APIs
Harnessing the Power of the Web via R Clients for Web APIsHarnessing the Power of the Web via R Clients for Web APIs
Harnessing the Power of the Web via R Clients for Web APIsLucy D'Agostino McGowan
 
DIY Synthetic: Private WebPagetest Magic
DIY Synthetic: Private WebPagetest MagicDIY Synthetic: Private WebPagetest Magic
DIY Synthetic: Private WebPagetest MagicJonathan Klein
 
sustainability-open presentation during BEMNext hack fest
sustainability-open presentation during BEMNext hack festsustainability-open presentation during BEMNext hack fest
sustainability-open presentation during BEMNext hack festJeroen Coenders
 
Slowcooked wp
Slowcooked wpSlowcooked wp
Slowcooked wpjoshfeck
 
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...Jon Phillips
 
How Tracking Companies Circumvent Ad Blockers Using WebSockets
How Tracking Companies Circumvent Ad Blockers Using WebSocketsHow Tracking Companies Circumvent Ad Blockers Using WebSockets
How Tracking Companies Circumvent Ad Blockers Using WebSocketsSajjad "JJ" Arshad
 
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...Frédéric Harper
 
So what's a web app? introduction to the chrome web store
So what's a web app? introduction to the chrome web storeSo what's a web app? introduction to the chrome web store
So what's a web app? introduction to the chrome web storeEric Bidelman
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSPablo Godel
 
Building Hypermedia APIs in JavaScript
Building Hypermedia APIs in JavaScriptBuilding Hypermedia APIs in JavaScript
Building Hypermedia APIs in JavaScript3scale
 
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...ascribeIO
 
App Indexing & Mobile SEO - Friends of Search 2016
App Indexing & Mobile SEO - Friends of Search 2016App Indexing & Mobile SEO - Friends of Search 2016
App Indexing & Mobile SEO - Friends of Search 2016MobileMoxie
 
Robb broome rubyconf x presentation for publication
Robb broome rubyconf x presentation for publicationRobb broome rubyconf x presentation for publication
Robb broome rubyconf x presentation for publicationRobb Broome
 
A tech writer, a map, and an app
A tech writer, a map, and an appA tech writer, a map, and an app
A tech writer, a map, and an appSarah Maddox
 
Social Media Copyright Management using Semantic Web and Blockchain
Social Media Copyright Management  using Semantic Web and BlockchainSocial Media Copyright Management  using Semantic Web and Blockchain
Social Media Copyright Management using Semantic Web and BlockchainRoberto García
 
Responsive Design and jQuery Mobile
Responsive Design and jQuery MobileResponsive Design and jQuery Mobile
Responsive Design and jQuery MobileTroy Miles
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?Andy Davies
 

Similar to DNN Service Framework Working With (20)

From Portals to platforms
From Portals to platformsFrom Portals to platforms
From Portals to platforms
 
Harnessing the Power of the Web via R Clients for Web APIs
Harnessing the Power of the Web via R Clients for Web APIsHarnessing the Power of the Web via R Clients for Web APIs
Harnessing the Power of the Web via R Clients for Web APIs
 
DIY Synthetic: Private WebPagetest Magic
DIY Synthetic: Private WebPagetest MagicDIY Synthetic: Private WebPagetest Magic
DIY Synthetic: Private WebPagetest Magic
 
sustainability-open presentation during BEMNext hack fest
sustainability-open presentation during BEMNext hack festsustainability-open presentation during BEMNext hack fest
sustainability-open presentation during BEMNext hack fest
 
Slowcooked wp
Slowcooked wpSlowcooked wp
Slowcooked wp
 
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...
The Open Library, Public Domain Wiki, and other Realized Myths of Creative Co...
 
How Tracking Companies Circumvent Ad Blockers Using WebSockets
How Tracking Companies Circumvent Ad Blockers Using WebSocketsHow Tracking Companies Circumvent Ad Blockers Using WebSockets
How Tracking Companies Circumvent Ad Blockers Using WebSockets
 
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
 
So what's a web app? introduction to the chrome web store
So what's a web app? introduction to the chrome web storeSo what's a web app? introduction to the chrome web store
So what's a web app? introduction to the chrome web store
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJS
 
Building Hypermedia APIs in JavaScript
Building Hypermedia APIs in JavaScriptBuilding Hypermedia APIs in JavaScript
Building Hypermedia APIs in JavaScript
 
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...
Rewiring the Internet for Ownership with Big Data and Blockchains, by Trent M...
 
App Indexing & Mobile SEO - Friends of Search 2016
App Indexing & Mobile SEO - Friends of Search 2016App Indexing & Mobile SEO - Friends of Search 2016
App Indexing & Mobile SEO - Friends of Search 2016
 
Robb broome rubyconf x presentation for publication
Robb broome rubyconf x presentation for publicationRobb broome rubyconf x presentation for publication
Robb broome rubyconf x presentation for publication
 
A tech writer, a map, and an app
A tech writer, a map, and an appA tech writer, a map, and an app
A tech writer, a map, and an app
 
Sprockets
SprocketsSprockets
Sprockets
 
Social Media Copyright Management using Semantic Web and Blockchain
Social Media Copyright Management  using Semantic Web and BlockchainSocial Media Copyright Management  using Semantic Web and Blockchain
Social Media Copyright Management using Semantic Web and Blockchain
 
Responsive Design and jQuery Mobile
Responsive Design and jQuery MobileResponsive Design and jQuery Mobile
Responsive Design and jQuery Mobile
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
 
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
 

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

DNN Service Framework Working With