SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Creating Personalized Documents with a Mashup of Technologies …and some other nifty stuff James Johnson Founder and President, Inland Empire .NET User’s Group Microsoft MVP e: james@iedotnetug.org  t:@latringo www.duringlunch.com
Been around for a hundred bazillion years Well actually since 2002 Build controls for Web forms, MVC, Windows Forms Silverlight, WPF Testing Tools A whole boatload of stuff www.telerik.com Telerik
Founder and President of the Inland Empire .NET User’s Group Independent Consultant Microsoft MVP ADHD/ADD/OCD when it comes to new technology Can’t stay away from the shiny new stuff. About Me
Built custom system to generate large mail merge documents. Needed way to integrate SQL Server, document editing, mail merge capabilities, and saving in Office 2007 format in an “access from anywhere” format. Um… ok Overview
SQL Server 2008 for data storage Entity Framework for data access ASP.NET MVC for “access anywhere” jQuery for building client functionality TelerikRadEditor for document editing OpenXML SDK for creating Office 2007 format docs Architecture
Ok, let’s see this wonderful thing Demo
Can take some time to grok Somewhat similar to LINQ to SQL But different Main gotcha Need to check for and load relationships of the entity if (!doc.MergeDocumentTypeReference.IsLoaded) doc.MergeDocumentTypeReference.Load();doc.MergeDocumentType.DocumentTypeId Entity Framework
So, yet something else to learn? Demo
Easy – to modify interface Lots of Ajaxy goodness Able to access from anywhere with a well known technology Fast development Just ‘cause ASP.NET MVC
A popular Rich Text Editor control for ASP.NET Customizable, but with some pain Formats text with CSS Client side access to properties and methods TelerikRadEditor
But I don’t want it to look like that!  I want it to look like this! Demo
“OpenXMLis based on XML, which confers the benefits of preservation, interoperability, and extensibilty. It is designed to support the existing features of word-processing documents, presentations, and spreadsheets.”   www.openxml.biz Format for generating Office 2007+ documents Can use on a server Easy, POCO functionality OpenXML
There must be something wrong. It can’t be *this* easy. Demo
Questions?
Win the Telerik controls suiteTweet #telerik#rmtechtrifecta

Weitere ähnliche Inhalte

Was ist angesagt?

HTML 5:An overview and how it is beneficial for Mobile app Development develo...
HTML 5:An overview and how it is beneficial for Mobile app Development develo...HTML 5:An overview and how it is beneficial for Mobile app Development develo...
HTML 5:An overview and how it is beneficial for Mobile app Development develo...alva christi
 
On the incoherencies in web browser access control
On the incoherencies in web browser access controlOn the incoherencies in web browser access control
On the incoherencies in web browser access controlUT, San Antonio
 
Hybrid Mobile Apps | Ionic & AngularJS
Hybrid Mobile Apps | Ionic & AngularJSHybrid Mobile Apps | Ionic & AngularJS
Hybrid Mobile Apps | Ionic & AngularJSHamdi Hmidi
 
Web developement course Ooi Trainings
Web developement course Ooi TrainingsWeb developement course Ooi Trainings
Web developement course Ooi TrainingsOoi Trainings
 
Dot net interview questions and asnwers
Dot net interview questions and asnwersDot net interview questions and asnwers
Dot net interview questions and asnwerskavinilavuG
 
Web 2.0 Mimbar Ilmiah
Web 2.0 Mimbar IlmiahWeb 2.0 Mimbar Ilmiah
Web 2.0 Mimbar IlmiahSoetam Rizky
 
Training presentation
Training presentationTraining presentation
Training presentationTayseer_Emam
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVCSunpawet Somsin
 
Introduction to react js and reasons to go with react js in 2020
Introduction to react js and reasons to go with react js in 2020Introduction to react js and reasons to go with react js in 2020
Introduction to react js and reasons to go with react js in 2020Concetto Labs
 
Introduction to mean stack
Introduction to mean stackIntroduction to mean stack
Introduction to mean stackPraveen Gubbala
 
MVC4 framework
MVC4 frameworkMVC4 framework
MVC4 frameworkimarkovic
 
Webcomponents TLV October 2014
Webcomponents TLV October 2014Webcomponents TLV October 2014
Webcomponents TLV October 2014Dmitry Bakaleinik
 

Was ist angesagt? (20)

Angular introduction basic
Angular introduction basicAngular introduction basic
Angular introduction basic
 
HTML 5:An overview and how it is beneficial for Mobile app Development develo...
HTML 5:An overview and how it is beneficial for Mobile app Development develo...HTML 5:An overview and how it is beneficial for Mobile app Development develo...
HTML 5:An overview and how it is beneficial for Mobile app Development develo...
 
On the incoherencies in web browser access control
On the incoherencies in web browser access controlOn the incoherencies in web browser access control
On the incoherencies in web browser access control
 
Hybrid Mobile Apps | Ionic & AngularJS
Hybrid Mobile Apps | Ionic & AngularJSHybrid Mobile Apps | Ionic & AngularJS
Hybrid Mobile Apps | Ionic & AngularJS
 
The RAW stack
The RAW stackThe RAW stack
The RAW stack
 
Web developement course Ooi Trainings
Web developement course Ooi TrainingsWeb developement course Ooi Trainings
Web developement course Ooi Trainings
 
Mean PPT
Mean PPTMean PPT
Mean PPT
 
Togu CMS
Togu CMSTogu CMS
Togu CMS
 
Angular JS: A Brief Introduction
Angular JS:  A Brief IntroductionAngular JS:  A Brief Introduction
Angular JS: A Brief Introduction
 
Dot net interview questions and asnwers
Dot net interview questions and asnwersDot net interview questions and asnwers
Dot net interview questions and asnwers
 
Web 2.0 Mimbar Ilmiah
Web 2.0 Mimbar IlmiahWeb 2.0 Mimbar Ilmiah
Web 2.0 Mimbar Ilmiah
 
Php and-mvc
Php and-mvcPhp and-mvc
Php and-mvc
 
MEAN Stack
MEAN Stack MEAN Stack
MEAN Stack
 
The RAW stack
The RAW stackThe RAW stack
The RAW stack
 
Training presentation
Training presentationTraining presentation
Training presentation
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
Introduction to react js and reasons to go with react js in 2020
Introduction to react js and reasons to go with react js in 2020Introduction to react js and reasons to go with react js in 2020
Introduction to react js and reasons to go with react js in 2020
 
Introduction to mean stack
Introduction to mean stackIntroduction to mean stack
Introduction to mean stack
 
MVC4 framework
MVC4 frameworkMVC4 framework
MVC4 framework
 
Webcomponents TLV October 2014
Webcomponents TLV October 2014Webcomponents TLV October 2014
Webcomponents TLV October 2014
 

Andere mochten auch

TTB - Five Important Things About Me
TTB -  Five Important Things About MeTTB -  Five Important Things About Me
TTB - Five Important Things About MeJeanette Murphy
 
Publicidad Creativa 10193
Publicidad Creativa 10193Publicidad Creativa 10193
Publicidad Creativa 10193mirtra
 
3 Secrets Of Productivity
3 Secrets Of Productivity3 Secrets Of Productivity
3 Secrets Of ProductivityRussMack
 
PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009Jeanette Murphy
 
Udayan Care Volunteer Programme For Slideshare
Udayan Care Volunteer Programme For SlideshareUdayan Care Volunteer Programme For Slideshare
Udayan Care Volunteer Programme For Slidesharekiran modi
 
Miracle Of A Digit
Miracle Of A DigitMiracle Of A Digit
Miracle Of A Digitdiretruth
 
Wings™ Brochure US
Wings™ Brochure USWings™ Brochure US
Wings™ Brochure USshaunlovett
 
Amplifying Social Impact in a Connected Age
Amplifying Social Impact in a Connected AgeAmplifying Social Impact in a Connected Age
Amplifying Social Impact in a Connected AgeMargaret Stangl
 
Top100technologysources
Top100technologysourcesTop100technologysources
Top100technologysourcesLisa Carter
 
Lucidity london how your business could use social media (2014)
Lucidity london how your business could use social media (2014)Lucidity london how your business could use social media (2014)
Lucidity london how your business could use social media (2014)Guy Steele-Perkins
 
Experienced Worker New Version Revised 3.2.2011
Experienced Worker New Version   Revised 3.2.2011Experienced Worker New Version   Revised 3.2.2011
Experienced Worker New Version Revised 3.2.2011mythicgroup
 
Jarrera eta Ikaskuntza Donostia 2011 1. gaia
Jarrera eta Ikaskuntza Donostia 2011 1. gaiaJarrera eta Ikaskuntza Donostia 2011 1. gaia
Jarrera eta Ikaskuntza Donostia 2011 1. gaiaKirolPsikologia
 
Marketing Communications Spring 2008 Final Project
Marketing Communications Spring 2008 Final ProjectMarketing Communications Spring 2008 Final Project
Marketing Communications Spring 2008 Final Projectlat886
 
TTB - Theme Scavenger Hunt
TTB - Theme Scavenger HuntTTB - Theme Scavenger Hunt
TTB - Theme Scavenger HuntJeanette Murphy
 
Action Guide Facebook 1.03.2010
Action Guide   Facebook   1.03.2010Action Guide   Facebook   1.03.2010
Action Guide Facebook 1.03.2010mythicgroup
 

Andere mochten auch (20)

TTB - Five Important Things About Me
TTB -  Five Important Things About MeTTB -  Five Important Things About Me
TTB - Five Important Things About Me
 
Publicidad Creativa 10193
Publicidad Creativa 10193Publicidad Creativa 10193
Publicidad Creativa 10193
 
Mammals
MammalsMammals
Mammals
 
Trout
TroutTrout
Trout
 
3 Secrets Of Productivity
3 Secrets Of Productivity3 Secrets Of Productivity
3 Secrets Of Productivity
 
RUN FOR HOPE
RUN FOR HOPERUN FOR HOPE
RUN FOR HOPE
 
PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009
 
merchant.debtum.ru
merchant.debtum.rumerchant.debtum.ru
merchant.debtum.ru
 
Udayan Care Volunteer Programme For Slideshare
Udayan Care Volunteer Programme For SlideshareUdayan Care Volunteer Programme For Slideshare
Udayan Care Volunteer Programme For Slideshare
 
Miracle Of A Digit
Miracle Of A DigitMiracle Of A Digit
Miracle Of A Digit
 
Wings™ Brochure US
Wings™ Brochure USWings™ Brochure US
Wings™ Brochure US
 
Amplifying Social Impact in a Connected Age
Amplifying Social Impact in a Connected AgeAmplifying Social Impact in a Connected Age
Amplifying Social Impact in a Connected Age
 
Top100technologysources
Top100technologysourcesTop100technologysources
Top100technologysources
 
Lucidity london how your business could use social media (2014)
Lucidity london how your business could use social media (2014)Lucidity london how your business could use social media (2014)
Lucidity london how your business could use social media (2014)
 
Experienced Worker New Version Revised 3.2.2011
Experienced Worker New Version   Revised 3.2.2011Experienced Worker New Version   Revised 3.2.2011
Experienced Worker New Version Revised 3.2.2011
 
Jarrera eta Ikaskuntza Donostia 2011 1. gaia
Jarrera eta Ikaskuntza Donostia 2011 1. gaiaJarrera eta Ikaskuntza Donostia 2011 1. gaia
Jarrera eta Ikaskuntza Donostia 2011 1. gaia
 
Question Matrix
Question MatrixQuestion Matrix
Question Matrix
 
Marketing Communications Spring 2008 Final Project
Marketing Communications Spring 2008 Final ProjectMarketing Communications Spring 2008 Final Project
Marketing Communications Spring 2008 Final Project
 
TTB - Theme Scavenger Hunt
TTB - Theme Scavenger HuntTTB - Theme Scavenger Hunt
TTB - Theme Scavenger Hunt
 
Action Guide Facebook 1.03.2010
Action Guide   Facebook   1.03.2010Action Guide   Facebook   1.03.2010
Action Guide Facebook 1.03.2010
 

Ähnlich wie Mail Merge Documents With Aspnet

Introduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBIntroduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBMuhammad Raza
 
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...Bill Buchan
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?ukdpe
 
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And DxlBp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxldominion
 
Learn Entity Framework in a day with Code First, Model First and Database First
Learn Entity Framework in a day with Code First, Model First and Database FirstLearn Entity Framework in a day with Code First, Model First and Database First
Learn Entity Framework in a day with Code First, Model First and Database FirstJibran Rasheed Khan
 
Dot net training-navimumbai
Dot net training-navimumbaiDot net training-navimumbai
Dot net training-navimumbaivibrantuser
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development Shean McManus
 
Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012daniel plocker
 
Top Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdfTop Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdfMoon Technolabs Pvt. Ltd.
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government DevelopersFrank La Vigne
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 
The web as it should be
The web as it should beThe web as it should be
The web as it should bethebeebs
 
Entity Framework v2 Best Practices
Entity Framework v2 Best PracticesEntity Framework v2 Best Practices
Entity Framework v2 Best PracticesAndri Yadi
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamBrian Benz
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudMicrosoft ArcReady
 
Web Development with Delphi and React - ITDevCon 2016
Web Development with Delphi and React - ITDevCon 2016Web Development with Delphi and React - ITDevCon 2016
Web Development with Delphi and React - ITDevCon 2016Marco Breveglieri
 

Ähnlich wie Mail Merge Documents With Aspnet (20)

Introduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBIntroduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEB
 
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...
Lotusphere 2007 AD507 Leveraging the Power of Object Oriented Programming in ...
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
 
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And DxlBp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
 
Learn Entity Framework in a day with Code First, Model First and Database First
Learn Entity Framework in a day with Code First, Model First and Database FirstLearn Entity Framework in a day with Code First, Model First and Database First
Learn Entity Framework in a day with Code First, Model First and Database First
 
Dot net training-navimumbai
Dot net training-navimumbaiDot net training-navimumbai
Dot net training-navimumbai
 
Resume
ResumeResume
Resume
 
70487.pdf
70487.pdf70487.pdf
70487.pdf
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development
 
Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012
 
Top Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdfTop Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdf
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government Developers
 
Entity Framework 4
Entity Framework 4Entity Framework 4
Entity Framework 4
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 
The web as it should be
The web as it should beThe web as it should be
The web as it should be
 
Entity Framework v2 Best Practices
Entity Framework v2 Best PracticesEntity Framework v2 Best Practices
Entity Framework v2 Best Practices
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Web Development with Delphi and React - ITDevCon 2016
Web Development with Delphi and React - ITDevCon 2016Web Development with Delphi and React - ITDevCon 2016
Web Development with Delphi and React - ITDevCon 2016
 

Kürzlich hochgeladen

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
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
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 

Kürzlich hochgeladen (20)

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
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
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
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 

Mail Merge Documents With Aspnet

  • 1. Creating Personalized Documents with a Mashup of Technologies …and some other nifty stuff James Johnson Founder and President, Inland Empire .NET User’s Group Microsoft MVP e: james@iedotnetug.org t:@latringo www.duringlunch.com
  • 2. Been around for a hundred bazillion years Well actually since 2002 Build controls for Web forms, MVC, Windows Forms Silverlight, WPF Testing Tools A whole boatload of stuff www.telerik.com Telerik
  • 3. Founder and President of the Inland Empire .NET User’s Group Independent Consultant Microsoft MVP ADHD/ADD/OCD when it comes to new technology Can’t stay away from the shiny new stuff. About Me
  • 4. Built custom system to generate large mail merge documents. Needed way to integrate SQL Server, document editing, mail merge capabilities, and saving in Office 2007 format in an “access from anywhere” format. Um… ok Overview
  • 5. SQL Server 2008 for data storage Entity Framework for data access ASP.NET MVC for “access anywhere” jQuery for building client functionality TelerikRadEditor for document editing OpenXML SDK for creating Office 2007 format docs Architecture
  • 6. Ok, let’s see this wonderful thing Demo
  • 7. Can take some time to grok Somewhat similar to LINQ to SQL But different Main gotcha Need to check for and load relationships of the entity if (!doc.MergeDocumentTypeReference.IsLoaded) doc.MergeDocumentTypeReference.Load();doc.MergeDocumentType.DocumentTypeId Entity Framework
  • 8. So, yet something else to learn? Demo
  • 9. Easy – to modify interface Lots of Ajaxy goodness Able to access from anywhere with a well known technology Fast development Just ‘cause ASP.NET MVC
  • 10. A popular Rich Text Editor control for ASP.NET Customizable, but with some pain Formats text with CSS Client side access to properties and methods TelerikRadEditor
  • 11. But I don’t want it to look like that! I want it to look like this! Demo
  • 12. “OpenXMLis based on XML, which confers the benefits of preservation, interoperability, and extensibilty. It is designed to support the existing features of word-processing documents, presentations, and spreadsheets.” www.openxml.biz Format for generating Office 2007+ documents Can use on a server Easy, POCO functionality OpenXML
  • 13. There must be something wrong. It can’t be *this* easy. Demo
  • 15. Win the Telerik controls suiteTweet #telerik#rmtechtrifecta