I think many asp.net developer looking at the markup generated by a ASP.NET pages wanted to get rid of those white space without necessity of changing nice indents of their pages and user controls.
Existing solutions of the problem based on one of the two methods: implementing a cleaning HtmlTextWriter and returning an instance of it in Page.CreateHtmlTextWriter override, or implementing a cleaning Stream and setting the HttpResponse.Filter property to an instance of the Stream.
But both methods incur runtime performance costs (I am going to show in a next post why that happens).
In my solution white space in generated markup removed at pages’ compile time, so that at runtime it looks as if white space was removed manually by the developers.
One would say that it is not actually a solution because it relies on Reflection and depends on implementation details of the particular version of ASP.NET. I would answer – Thanks God that I haven’t had to resort to the help of unsafe code and pointer arithmetic :)
Let’s start with the beginning. When ASP.NET generates C#/VB code for an ASP.NET page it uses ControlBuilders representing almost every entity (except text) in the page tree. Besides holding information about the part of the page it represents, they let controls creators change different aspects of generated code (in .NET 3.5 SP1 including ability to change generated CodeDom). For regular pages control builders exist at compile time only, but in “no compile” pages they actually create at runtime the parts they are responsible for.
As a page at runtime time is a tree of controls, server side code and text , the page at compile time is a tree of control builders. Each builder holds a collection of subbuilders in an ArrayList. Untyped collection is used because literal strings are placed in subbuilders collection not being wrapped in control builders.
Knowing all that we can traverse control builder tree from the root, iterate over the each builder’s subbuilders collection, find instances of strings and replace them with cleaned versions.
Getting access to the root control builder at right time was not easy. I tried different ways but all had shortcomings or inconveniences. But then examining .NET sources by Reflector I found the perfect way - PageParserFilter. PageParserFilter “provides an abstract base class for a page parser filter that is used by the ASP.NET parser to determine whether an item is allowed in the page at parse time”. This ability (among other useful things) was added to ASP.NET 2.0 as a result of cooperation between ASP.NET team and SharePoint team poring their product to ASP.NET. The only method of interest now is PageParserFilter.ParseComplete(ControlBuilder rootBuilder) and it is the right place and time for accessing the root builder. The remaining part is easy. See the attached web site project. Compile the classes in a dll, drop it in Bin folder, small change to web.config and voilà– ASP.NET white space cleaning with no runtime cost!
BTW the code has been working for a few projects in the wild with no problems.
UPDATE (17 Aug 2010): I’ve updated the sample to work with MVC 2 and MVC 3 Preview 1 (including support of Razor view engine).
UPDATE (9 Oct 2010): Now it works with MVC 3 Beta.
UPDATE (4 May 2011): Finally with MVC 3 RTW
Wow! Thanks. I've been looking for this solution for a long time. Even the excellent 'Ultra-Fast ASP.NET' book doesn't cover this topic (tricks of the compile-time stage).
ОтветитьУдалить@thorn: Yes, it seems ControlBuilder mechanism is not that flexible bacause it was created mostly for internal purposes
ОтветитьУдалитьLet's vote for making this mechanism more open: http://aspnet.uservoice.com/forums/41202-asp-net-webforms/suggestions/488607
ОтветитьУдалитьhow do you make this work? I've changed the web.config, added the classes and pasted using Omari.Web.UI in my page and masterpage. It does noghing yet.
ОтветитьУдалить@Flori: Have you set debug="false" in your web.config?
ОтветитьУдалитьThis worked like a charm for me. Basically you just need the three class files in the app_Code and build in the project. My page size went form 142kb to 90kb ~50kb reduction.
ОтветитьУдалитьCheckout my live implementation at http://fullmeals.net
this is EXCELLENT. I hope you package it up somehow and sell it, honestly. Make a few small improvements to cleaning up additional whitespace and it will be golden. Well done, great work.
ОтветитьУдалитьewart @ ihug dot co dot nz
wish I knew which button was send in russian!
Thanks, ewart.
ОтветитьУдалитьWhat about css and js optimization? Is this posible using this technology?
ОтветитьУдалитьKiril, unlike web pages, css and js are static in their nature. They can be easily minimized, combined, zipped and cached.
ОтветитьУдалитьHi Omari,
ОтветитьУдалитьThis project sounds great and I'd really like to try it out, but I'm having trouble getting this to work even for the included WebForms or the MMVC2 example projects (I'm not using MVC3 Beta yet, although I'm looking forward to Razor when it goes RTM). I double checked that debug="false" is set and the binaries are where they are supposed to be, I've tried running it from Visual Studio 2010 and from IIS 7.5, and I've even tried re-downloading and extracting the zip somewhere else and starting from scratch again to get one of the examples to work. But no luck. Am I missing something obvious? Is it possible that the recent MVC3 update broke MVC2 support?
Looking forward to getting it working! :)
Any chance you can update again to include proper support in RC2? I had an issue here http://stackoverflow.com/questions/4414231/why-am-i-getting-asp-net-mvc3-razor-syntax-errors
ОтветитьУдалитьAnybody have a working version with ASP.NET MVC 3 RTM ?
ОтветитьУдалитьIs it compatible with MVC3 and razor?
ОтветитьУдалитьHey, great tool! Any chance of an update since the the latest MVC release?
ОтветитьУдалитьCool, thanks for sharing
ОтветитьУдалитьВаши усилия ценятся!
ОтветитьУдалитьVery impressive... Was looking for exactly this! Thank you very much!
ОтветитьУдалитьDoes it work with AJAX?
ОтветитьУдалитьWhy do you require debug="true"?
ОтветитьУдалитьMay I step over this check in you code just to debug it?
Can't find attachment.
ОтветитьУдалитьwww.gourmandia.com - Gourmandia is a culinary website offering videos of world-class Michelin rated chefs exhibiting their techniques. Also features documentaries on fine dining restaurant locations and cities, recipes, forum, and more. At www.gourmetrecipe.com - Gourmet Recipe is the place to find the tastiest, healthiest gourmet recipes. Watch videos of great chefs preparing meals, find easy beginner dishes, and more.
ОтветитьУдалитьThere are many ways to improve your cooking abilities into the whole new level. Try to visit these sites http://www.gourmandia.com , http://www.gourmetrecipe.com , http://www.foodiamond.com , http://www.xdestination.com and their sub-domains. Feel free to suggest and recommend what these sites can offer. Online cooking recipes are never been this good for they have featured recipes that are truly remarkable. In addition, the site offers easy and quick recipes with featured video that are easy to follow from the world-class Michelin. Visit now and have some fun.
ОтветитьУдалитьI appreciate your time and effort to come up this kind of article. Try to take a glance at gourmetrecipe. A recommendation for you to relax and unwind for a while...In that website you will find many tasty and nutritious dishes for you to choose from and your family. I also assure you, you won't regret it for visiting this site.
ОтветитьУдалитьThis is really cool. Thanks for building it!!
ОтветитьУдалитьPlease consider making this into a Nuget package so it can be easily installed and discovered.
Such a wonderful post. Asp.net Development is one of the most popular application development now-a-days. We are also providing some good tips related to this post.Great work.
ОтветитьУдалитьThis is the best solution I've seen. I tried recompiling for MVC4 but it fails to load the WhiteSpaceCleaningMvcWebRazorHostFactory. Any pointers on what I might need to do in order for it to work?
ОтветитьУдалитьVery cool post. Nuget package would be a great idea.
ОтветитьУдалитьHowever, It doesn't seem to work with MVC3. I'm getting "Access is denied: 'System.Web.Mvc.Razor.MvcCSharpRazorCodeGenerator'." errors. Is there a workaround to fix it?
Thanks.
What about version for MVC4?
ОтветитьУдалитьThe previous versions works great.
Этот комментарий был удален автором.
ОтветитьУдалитьNice work. unfortunately, This is not working at all for me in MVC3.
ОтветитьУдалитьCan you upload a working solution.It would helpfil if you have a readme.txt file to demonstrate what steps need to follow to make it work.
Great Solution. It helped me a lot.:)
ОтветитьУдалитьI can see attached solution. Where can I download the code from?
ОтветитьУдалитьcan anyone tell me where can I download the code?
ОтветитьУдалитьHi Omari,
ОтветитьУдалитьCould you please re-upload the code? Skydrive embed link is broken :(
Thanks!
thanks I did it on my web site: bilgi
ОтветитьУдалитьHey Omari,
ОтветитьУдалитьYour site is broken, I would realy like to take a look at this library.
Thanks!
I have read your blog its very attractive and impressive. I like it your blog.
ОтветитьУдалить.Net Training in Chennai | .Net Online Training
Dot Net Online Training | LINQ Online Training
This is ansuperior writing service point that doesn't always sink in within the context of the classroom. In the first superior writing service paragraph you either hook the reader's interest or lose it. Of course your teacher, who's getting paid to teach you how to write an good essay,
ОтветитьУдалитьThis is ansuperior writing service point that doesn't always sink in within the context of the classroom. In the first superior writing service paragraph you either hook the reader's interest or lose it. Of course your teacher, who's getting paid to teach you how to write an good essay,
Read all the information that i've given in above article. It'll give u the whole idea about it.
ОтветитьУдалитьData Science training in chennai
Data Science training in OMR
Data Science training in chennai
Data Science Training in Chennai
Data Science training in Chennai
Data science training in bangalore
Nice Article Keep Write These Types of Article
ОтветитьУдалитьAws Training in Bangalore
Devops Training in Bangalore
Hadoop Training in Bnagalore
Datascience Training in Bangalore
Python Training in Bangalore
Ụbọchị obi ụtọ na obi ụtọ. Ana m ekele gị nke ukwuu maka ịkekọrịta isiokwu ahụ
ОтветитьУдалитьmáy phun tinh dầu
máy khuếch tán tinh dầu tphcm
máy khuếch tán tinh dầu hà nội
máy xông phòng ngủ
Tsab ntawv xov xwm no nthuav heev. Ua tsaug rau kev sib qhia
ОтветитьУдалитьGIẢO CỔ LAM GIẢM BÉO
MUA GIẢO CỔ LAM GIẢM BÉO TỐT Ở ĐÂU?
NHỮNG ĐIỀU CHƯA BIẾT VỀ GIẢO CỔ LAM 9 LÁ
Giảo Cổ Lam 5 lá khô hút chân không (500gr)
www.ninonurmadi.com
ОтветитьУдалитьwww.lampungservice.com
www.lampunginfo.com
lampungjasa.blogspot.com
beritalampungmedia.blogspot.com
lampungandroid.blogspot.com
Thanks for Sharing this useful information. Get sharepoint apps development from veelead solutions
ОтветитьУдалитьamazing blog. thanks for sharing
ОтветитьУдалитьjava interview questions and answers/java interview questions advanced/java interview questions and answers pdf/java interview questions advanced/java interview questions and answers pdf/java interview questions and answers pdf download/java interview questions beginner/java interview questions core java/java interview questions data structures/java interview questions download pdf/java interview questions for freshers/java interview hr questions/java interview questions in pdf/advanced java interview questions javatpoint/java interview questions for experienced/java interview questions quora/core java interview questions for 3 years experience/hr interview questions javatpoint/java interview questions quora/java interview questions videos/java interview questions 2019/java interview questions latest
x-cart integration
ОтветитьУдалитьFlying Shift - Packers & Movers in Bhopal
ОтветитьУдалитьhttps://www.blogger.com/profile/16792938941251995314
Informative content.
ОтветитьУдалитьFor the best AWS training in bangalore, Visit:
AWS training in bangalore
Good Article
ОтветитьУдалитьdevops training in bangalore
hadoop training in bangalore
iot training in bangalore
machine learning training in bangalore
uipath training in bangalore
Thanks for sharing.it really helpful.nice information.
ОтветитьУдалитьData science course in pune
Data science classes in pune
Data science training in pune with placement
Data science training in pune
https://www.seotoolsrack.com/tools/age-calculator
ОтветитьУдалитьThanks for sharing the article. Keep Sharing
ОтветитьУдалитьPython classes in Pune
Python training in Pune
Python courses in Pune
Python institute Pune
Python training in Pune with placement
Thanks for sharing it.I got Very valuable information from your blog.your post is really very Informatve. I got Very valuable information from your blog.I’m satisfied with the information that you provide for me.
ОтветитьУдалитьPython Training in Pune
Python Classes
Python Placement
Python Institute Pune
Python courses
Thanks For Sharing For More Info Check Below Links
ОтветитьУдалитьclick
Visit
read more
more
more
more
THanks For Sharing
ОтветитьУдалитьSerials Talk
Serials Talk
Serials Talk
Serials Talk
Serials Talk
Serials Talk
Serials Talk
Thanks for your excellent blog and giving great kind of information. So useful. Nice work keep it up thanks for sharing the knowledge.
ОтветитьУдалитьClick Here
For More Details
Visit Website
See More
Thanku for giving time to post this blog about dotNET ..
ОтветитьУдалитьThanks for sharing it.I got Very valuable information from your blog.your post is really very Informatve. I got Very valuable information from your blog.I’m satisfied with the information that you provide for me.
ОтветитьУдалитьDevOps Training in Pune
DevOps Training
DevOps Placement
DevOps Institute Pune
devops training in pune with placement
Thanks for Sharing Such an Informative Stuff...
ОтветитьУдалитьtableau training
I am a regular reader of your blog and I find it really informative. Hope more Articles From You.Best Tableau tutorial videos with Real time scenarios . hope more articles from you.
ОтветитьУдалитьIt's almost that time of the year when you get the hottest deals on Web Hosting, you guessed it right! It's time for the Black Friday Web Hosting Deals 2019. Companies are lining up some of the best deals ever for 2019 buyers will have a lot to pick from in the industry.
ОтветитьУдалитьThanks a lot for sharing it, that’s truly has added a lot to our knowledge about this topic. Have a more success ful day. Amazing write-up, always find something interesting and here i want to share some thing about mule 4 training.
ОтветитьУдалитьThanks for your valuable post... The data which you have shared is more informative for us...
ОтветитьУдалитьaws Training in Bangalore
python Training in Bangalore
hadoop Training in Bangalore
angular js Training in Bangalore
bigdata analytics Training in Bangalore
Thanks for sharing such an useful an informative stuff...
ОтветитьУдалитьaws training videos
I am really happy with your blog because your article is very unique and powerful for new reader.
ОтветитьУдалитьaws Training in Bangalore
python Training in Bangalore
hadoop Training in Bangalore
angular js Training in Bangalore
bigdata analytics Training in Bangalore
python Training in Bangalore
aws Training in Bangalore
Thanks for sharing it.I got Very valuable information from your blog.your post is really very Informatve. I got Very valuable information from your blog.I’m satisfied with the information that you provide for me.
ОтветитьУдалитьaws course
aws certification
aws syllabus
aws syllabus
Thanks for your excellent blog and giving great kind of information. So useful. Nice work keep it up thanks for sharing the knowledge.
ОтветитьУдалитьVisit us
Click Here
For More Details
Visit Website
Its really helpful for the users of this site. I am also searching about these type of sites now a days. So your site really helps me for searching the new and great stuff.
ОтветитьУдалитьsap s4 hana training in bangalore
sap simplefinance training in bangalore
sap training in bangalore
sap abap training in bangalore
sap basis training in bangalore
sap bi training in bangalore
sap dynpro training in bangalore
sap fico training in bangalore
This is excellent information. It is amazing and wonderful to visit your site.
ОтветитьУдалитьaws Training in Bangalore
python Training in Bangalore
hadoop Training in Bangalore
angular js Training in Bangalore
bigdata analytics Training in Bangalore
python Training in Bangalore
aws Training in Bangalore
Thanks for sharing it.I got Very valuable information from your blog.your post is really very Informatve.I’m satisfied with the information that you provide for me.
ОтветитьУдалитьdata science course form
Really i appreciate the effort you made to share the knowledge. The topic here i found was really effective...
ОтветитьУдалитьBest SAP HR Training in Bangalore
Best SAP BASIS Training in Bangalore
Best SAP HCM Training in Bangalore
Best SAP S4 HANA Simple Finance Training in Bangalore
Best SAP S4 HANA Simple Logistics Training in Bangalore
We as a team of real-time industrial experience with a lot of knowledge in developing applications in python programming (7+ years) will ensure that we will deliver our best in python training in vijayawada. , and we believe that no one matches us in this context.
ОтветитьУдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьSnapdeal Winner List 2020 here came up with an Offer where you can win Snapdeal prize list by just playing a game & win prizes.
ОтветитьУдалитьSnapdeal winner name also check the Snapdeal lucky draw
Thanks for sharing such an useful and nice info...
ОтветитьУдалитьTableau Advanced Training
ОтветитьУдалитьThank you for sharing your post. It is awesome.
Arnsim
Best product and digital agency
Best web design and development company
Best digital marketing agency
Best customer support services
Best mobile app development company
Best design and development
Best design and development service provider
Arnsim - A web designand development company
Learn best practice and get your questions answered with our Expert, Register Now for Demo at Apex Trainings Academy.
ОтветитьУдалитьfull stack developer course in Hyderabad
full stack developer course
really good one.
ОтветитьУдалитьthanks for sharing.
machine learning courses
ОтветитьУдалитьThis is a wonderful article, Given so much info in it, These type of articles keeps the users interest in the website, and keep on sharing more ... good luck... Thank you!!! machine learning courses in Bangalore
This is a wonderful article, Given so much info in ExcelR Machine Learning Courses In Pune it, These type of articles keeps the users interest in the website, and keep on sharing more ... good luck.
ОтветитьУдалить
ОтветитьУдалитьThanks for sharing such a great information.It is really one of the finest article and more informative too. I want to share some informative data about c net training and c# videos . Expecting more articles from you. Expecting more articles from you.
Shopclues lucky draw 2020| Shopclues winner 2020|Get to Know Shopclues Lucky Draw Winner 2020. Call Shopclues Helpline Phone Number+91-9835565523 for Shopclues Online Shopping Lucky Draw.
ОтветитьУдалитьShopclues online lucky draw winner
Shopclues winner 2020
shopclues car lucky draw
This is so elegant and logical and clearly explained. Brilliantly goes through what could be a complex process and makes it obvious.... sap bi tutorial
ОтветитьУдалитьnice.
ОтветитьУдалитьmachine learning course in pune
ОтветитьУдалитьPretty article! I found some useful information in your blog, it was awesome to read, thanks for sharing this great content to my vision. i also want to share some infor mation regarding sap online course and sap sd training .keep sharing.
Thank you for sharing the best information
ОтветитьУдалитьSnapdeal winner 2020 | Dear customer, you can complain here If you get to call and SMS regarding Snapdeal lucky draw, Mahindra xuv 500, lucky draw contest, contact us at to know the actual Snapdeal prize winners 2020.
Snapdeal winner 2020
Snapdeal lucky draw winner 2020
Snapdeal lucky draw contest 2020
snapdeal winner prizes 2020
Your blog is splendid, I follow and read continuously the blogs that you share, they have some really important information. M glad to be in touch plz keep up the good work.
ОтветитьУдалитьExcelR Solutions
Nice article. For offshore hiring services visit:
ОтветитьУдалитьfairygodboss
Snapdeal lucky winner 2020 | Snapdeal online lucky Draw 2020 | Snapdeal Winner List 2020 here came up with an Offer where you can win Snapdeal prize by just playing a game & win prizes
ОтветитьУдалитьsnapdeal winner prizes 2020
Snapdeal winner 2020
Snapdeal lucky Draw 2020
Snapdeal online lucky draw 2020
Wow it is really wonderful and awesome thus it is very much useful for me to understand many concepts and helped me a lot. it is really explainable very well and i got more information from your blog.
ОтветитьУдалитьDigital Marketing Certification Course
togel online
ОтветитьУдалитьbandar togel terpercaya
agen togel
judi togel
Thanks you for sharing this informative and useful article.Really interesting and awesome article.
ОтветитьУдалитьData Science Training in Hyderabad
Thank you for sharing wonderful information with us to get some idea about it.
ОтветитьУдалитьPython Online Training in Hyderabad
Python Training in Hyderabad
Python Training
Python Online Training
Excellent blog I visit this blog it's really awesome. The important thing is that in this blog content written clearly and understandable. The content of Devops is very informative.
ОтветитьУдалитьJava training in chennai | Java training in annanagar | Java training in omr | Java training in porur | Java training in tambaram | Java training in velachery
Pretty article! I found some useful information in your blog, it was awesome to read servicenow online training , thanks for sharing this great content to my vision, keep sharing.
ОтветитьУдалитьInformative post, i love reading such posts. Read my posts here
ОтветитьУдалитьCannabizconnection
Referall
GTA Stunting
haii
ОтветитьУдалитьthanks for sharing nice information. its Very use full and informative and keep sharing.
https://www.analyticspath.com/artificial-intelligence-training-in-hyderabad
Really nice and interesting post. I was looking for this kind of information and enjoyed reading this one. Keep posting. Thanks for sharing.....bangalore digital marketing course
ОтветитьУдалитьThis is a great post. I like this topic.This site has lots of advantage.I found many interesting things from this site. It helps me in many ways.Thanks for posting this again.I really like this topic.
ОтветитьУдалитьdevops training in chennai | devops training in anna nagar | devops training in omr | devops training in porur | devops training in tambaram | devops training in velachery
Nice article, keep sharing
ОтветитьУдалитьForum.app
Jobs
Jedox
thanks for sharing nice information. its Very use full and informative and keep sharing.
ОтветитьУдалитьmore : https://www.kellytechno.com/Hyderabad/Course/AI-Training-In-Hyderabad
thanks for sharing nice information....
ОтветитьУдалитьmore : https://www.kellytechno.com/Hyderabad/Course/python-training
thanks for sharing nice information....
ОтветитьУдалитьHadoop Training in Hyderabad
Hey, i liked reading your article. You may go through few of my creative works here
ОтветитьУдалитьDiigo
Openclassrooms
thanks for sharing nice information....
ОтветитьУдалитьAI Training in Hyderabad
Thanks for sharing such informative guide on .Net technology. This post gives me detailed information about the .net technology.
ОтветитьУдалитьDot Net Training in Chennai | Dot Net Training in anna nagar | Dot Net Training in omr | Dot Net Training in porur | Dot Net Training in tambaram | Dot Net Training in velachery
A backlink is a link created when one website links to another. Backlinks are important to SEO & impact for higher ranking. In my 7+ years seo Career i see, without backlinks a website doesn't rank higher on google SERP.
ОтветитьУдалитьGet Your 300+ High Quality DoFollow Backlinks Here!
Order Now with Full Confidence & 100% satisfaction.
Thanks for sharing nice information....
ОтветитьУдалитьHadoop Training in Hyderabad
ОтветитьУдалитьThe information which you have provided is very good. It is very useful who is looking for
Python Training in Hyderabad
Python Training
Python Online Training
Python Course in Hyderabad
Python Institute in Hyderabad
Python Online Training in Hyderabad
Very nice blog.We are the Best Digital Marketing Agency in Chennai, Coimbatore, Madurai and change makers of digital! For Enquiry Contact us @+91 9791811111
ОтветитьУдалитьWebsite designers in chennai | digital marketing agencies in chennai |digital marketing consultants in chennai | Best seo company in chennai | Best SEO Services in Chennai
great poster.We are the Best Digital Marketing Agency in Chennai, Coimbatore, Madurai and change makers of digital! For Enquiry Contact us @+91 9791811111
ОтветитьУдалитьWebsite designers in chennai | digital marketing agencies in chennai |digital marketing consultants in chennai | Best seo company in chennai | Best SEO Services in Chennai
Thanks for sharing excellent info....
ОтветитьУдалитьPHP Training in Chennai | Certification | Online Training Course | Machine Learning Training in Chennai | Certification | Online Training Course | iOT Training in Chennai | Certification | Online Training Course | Blockchain Training in Chennai | Certification | Online Training Course | Open Stack Training in Chennai |
Certification | Online Training Course
Thank you for the informative post. It was thoroughly helpful to me. Keep posting more such articles and enlighten us.
ОтветитьУдалитьWeb Designing Training Course in Chennai | Certification | Online Training Course | Web Designing Training Course in Bangalore | Certification | Online Training Course | Web Designing Training Course in Hyderabad | Certification | Online Training Course | Web Designing Training Course in Coimbatore | Certification | Online Training Course | Web Designing Training Course in Online | Certification | Online Training Course
Great Post! it is very helpful for me and all for those who want to learn. Dot Net Training
ОтветитьУдалитьVery Nice Detail And Good Article Thanks for posting .wonderful great blog. We offer the most budget-friendly quotes on all your digital requirements. We are available to our clients when they lookout for any help or to clear queries.
ОтветитьУдалитьBest SEO Services in Chennai | digital marketing agencies in chennai | Best seo company in chennai | digital marketing consultants in chennai | Website designers in chennai
Forex Signals, MT4 and MT5 Indicators, Strategies, Expert Advisors, Forex News, Technical Analysis and Trade Updates in the FOREX IN WORLD
ОтветитьУдалитьForex Signals Forex Strategies Forex Indicators Forex News Forex World
Nice Blog. Data Science Course in Pune
ОтветитьУдалитьI was really impressed by reading this blog. It was very helpful for gwtting kn owledge about .Net.
ОтветитьУдалитьweb designing training in chennai
web designing training in tambaram
digital marketing training in chennai
digital marketing training in tambaram
rpa training in chennai
rpa training in tambaram
tally training in chennai
tally training in tambaram
Its very informative and you done great job.
ОтветитьУдалитьThanks for your post
java training in chennai
java training in porur
aws training in chennai
aws training in porur
python training in chennai
python training in porur
selenium training in chennai
selenium training in porur
post,
This site was ...how do you say it? Relevant !!! I've found something that helped me . Thank you !
ОтветитьУдалитьweb designing training in chennai
web designing training in annanagar
digital marketing training in chennai
digital marketing training in annanagar
rpa training in chennai
rpa training in annanagar
tally training in chennai
tally training in annanagar
Really it is very useful for us..... the information that you have shared is really useful for everyone.Nice article i have ever read information's like this.it's really awesome the way you have delivered your ideas.i hope you will add more content in your blog PHP Training in Chennai | Certification | Online Training Course | Machine Learning Training in Chennai | Certification | Online Training Course | iOT Training in Chennai | Certification | Online Training Course | Blockchain Training in Chennai | Certification | Online Training Course | Open Stack Training in Chennai |
ОтветитьУдалитьCertification | Online Training Course
I hope you continue to provide new ideas for us all and greetings success always for you..Keep update more information..
ОтветитьУдалитьpython training in chennai
python course in chennai
python online training in chennai
python training in bangalore
python training in hyderabad
python online training
python training
python flask training
python flask online training
python training in coimbatore
I was able to find good information from your blog articles.I have express a few of the articles on your website now, and I really like your style of blogging. I added it to my favorite’s blog site list and will be checking back soon…That being said, I think most devs would prefer entity substitution over a literal line break, but I suppose I'll take it any way I can get it.Java training in Chennai
ОтветитьУдалитьJava Online training in Chennai
Java Course in Chennai
Best JAVA Training Institutes in Chennai
Java training in Bangalore
Java training in Hyderabad
Java Training in Coimbatore
Java Training
Java Online Training
Awesome Post! I like writing style, how you describing the topics throughout the post. I hope many web reader will keep reading your post at the end, Thanks for sharing your view.
ОтветитьУдалитьweb designing training in chennai
web designing training in velachery
digital marketing training in chennai
digital marketing training in velachery
rpa training in chennai
rpa training in velachery
tally training in chennai
tally training in velachery
Thanks for sharing it.I got Very valuable information from your blog.your post is really very Informatve. I got Very valuable information from your blog.I’m satisfied with the information that you provide for me.
ОтветитьУдалитьangular js training in chennai
angular training in chennai
angular js online training in chennai
angular js training in bangalore
angular js training in hyderabad
angular js training in coimbatore
angular js training
angular js online training
Hi, Great achievement are you guys done a great job...
ОтветитьУдалитьData Science Training in Hyderabad
Thanks for sharing an informative blog keep rocking bring more details.I like the helpful info you provide in your articles. I’ll bookmark your weblog and check again here regularly.I need to to thank you for your time due to this fantastic read!! I definitely enjoyed every bit of it and I have you bookmarked to see new information on your blog.
ОтветитьУдалитьDevOps Training in Chennai
DevOps Online Training in Chennai
DevOps Training in Bangalore
DevOps Training in Hyderabad
DevOps Training in Coimbatore
DevOps Training
DevOps Online Training
This is excellent information. It is amazing and wonderful to visit your site.Thanks for sharing this information,this is useful to me...
ОтветитьУдалитьAWS training in Chennai
AWS Online Training in Chennai
AWS training in Bangalore
AWS training in Hyderabad
AWS training in Coimbatore
AWS training
What as up, I read your blogs like every week. Your writing style is awesome, keep up the good work!
ОтветитьУдалитьSalesforce admin training
salesforce development online training
salesforce development training
salesforce online training
salesforce training
Advanced Java online training
Advanced Java training
An amazing web journal I visit this blog, it's unbelievably wonderful. Oddly, in this blog's content made without a doubt and reasonable..keep it up!!
ОтветитьУдалитьAndroid Training in Chennai
Android Online Training in Chennai
Android Training in Bangalore
Android Training in Hyderabad
Android Training in Coimbatore
Android Training
Android Online Training
Thanks for sharing an informative blog keep rocking bring more details.I like the helpful info you provide in your articles. I’ll bookmark your weblog and check again here regularly. keep up!!!
ОтветитьУдалитьAndroid Training in Chennai
Android Online Training in Chennai
Android Training in Bangalore
Android Training in Hyderabad
Android Training in Coimbatore
Android Training
Android Online Training
well post
ОтветитьУдалитьSoftware Testing Training in Chennai | Certification | Online
Courses
Software Testing Training in Chennai
Software Testing Online Training in Chennai
Software Testing Courses in Chennai
Software Testing Training in Bangalore
Software Testing Training in Hyderabad
Software Testing Training in Coimbatore
Software Testing Training
Software Testing Online Training
Thank you for sharing such a great information.Its really nice and informative.hope more posts from you. I also want to share some information recently i have gone through and i had find the one of the best mule esb training videos
ОтветитьУдалитьacte chennai
acte complaints
acte reviews
acte trainer complaints
acte trainer reviews
acte velachery reviews complaints
acte tambaram reviews complaints
acte anna nagar reviews complaints
acte porur reviews complaints
acte omr reviews complaints
I like your post. Everyone should do read this blog. Because this blog is important for all now I will share this post. Thank you so much for share with us.
ОтветитьУдалитьAWS Training in Hyderabad
Thanks for provide great informatics and looking beautiful blog, really nice required information & the things i never imagined and i would request, wright more blog and blog post like that for us. Thanks you once again
ОтветитьУдалитьAWS Training in Hyderabad
"nice blog and very interesting. . .
ОтветитьУдалитьCyber Security Training Course in Chennai | Certification | Cyber Security Online Training Course | Ethical Hacking Training Course in Chennai | Certification | Ethical Hacking Online Training Course |
CCNA Training Course in Chennai | Certification | CCNA Online Training Course | RPA Robotic Process Automation Training Course in Chennai | Certification | RPA Training Course Chennai | SEO Training in Chennai | Certification | SEO Online Training Course
Thanks for your excellent blog and giving great kind of information. So useful.
ОтветитьУдалитьacte reviews
acte velachery reviews
acte tambaram reviews
acte anna nagar reviews
acte porur reviews
acte omr reviews
acte chennai reviews
acte student reviews
Nice to be seeing your site once again, it's been weeks for me. This article which ive been waited for so long. I need this guide to complete my mission inside the school, and it's same issue together along with your essay.
ОтветитьУдалитьpython training in bangalore
python training in hyderabad
python online training
python training
python flask training
python flask online training
python training in coimbatore
Good Post! , it was so good to read and useful to improve my knowledge as an updated one, keep blogging.After seeing your article I want to say that also a well-written article with some very good information which is very useful for the readers....thanks for sharing it and do share more posts like this.
ОтветитьУдалитьhttps://www.3ritechnologies.com/course/microsoft-azure-training-in-pune/
Full Stack Course Chennai
ОтветитьУдалитьFull Stack Training in Bangalore
Full Stack Course in Bangalore
Full Stack Training in Hyderabad
Full Stack Course in Hyderabad
Full Stack Training
Full Stack Course
Full Stack Online Training
Full Stack Online Course
Good Post! , it was so good to read and useful to improve my knowledge as an updated one, keep blogging. After seeing your article I want to say that also a well-written article with some very good information which is very useful for the readers....thanks for sharing it and do share more posts like this.
ОтветитьУдалитьhttps://www.3ritechnologies.com/course/microsoft-azure-training-in-pune/
Excellent work,Thanks for provide a great informatic and looking beautiful blog, really nice required information & the things i never imagined and i would request, wright more blog and blog post like that for us. Thanks you once agian
ОтветитьУдалитьMachine Learning Courses I really enjoy reading and also appreciate your work. I read that Post and got it fine and informative. Please share more like that...
ОтветитьУдалитьCool stuff you have, and you keep overhaul every one of us.
Thank you a lot for providing individuals with a very spectacular possibility to read critical reviews from this site.
ОтветитьУдалитьData Science Training in Hyderabad
I just loved your article on the beginners guide to starting a blog.If somebody take this blog article seriously
ОтветитьУдалитьin their life, he/she can earn his living by doing blogging.Thank you for this article.
tibco sportfire online training
Nice post!
ОтветитьУдалитьWorried About QuickBooks Error ?Get in touch with QuickBooks expert for instant solution.
Click Here to know how to fix QuickBooks Error 8007
Dial on QuickBooks Error Phone Number +1-855-977-7463.
Thanks for Sharing.
ОтветитьУдалитьData Science Online Training
Python Online Training
Salesforce Online Training
IoT Training in Chennai
ОтветитьУдалитьSometimes it’s become so hard to buy a new phone when you have a little money. But it’s very urgent to buy a mobile phone. Then you should search for a second hand mobile phone market for sale in various classified ads platforms in your area or Quikads. By this you could fill up your needs.
ОтветитьУдалитьMale fertility doctor in chennai
ОтветитьУдалитьStd clinic in chennai
Erectile dysfunction treatment in chennai
Premature ejaculation treatment in chennai
ОтветитьУдалитьDr. Vivek Galani is a leading expert in skin and hair. At hair transplant clinic in Surat Skin Care, Cosmetic Laser, Hair Transplant & Slimming Center, Dr. Galani offers the most advanced cosmetic and dermatologic care treatments. The clinic uses advanced FUE methods to produce high-quality hair transplants.
digital marketing company
ОтветитьУдалитьecommerce service company
shopify website development
prestashop development
Nice Blog !
ОтветитьУдалитьQuickBooks Error 248 can occur when a user tries to run payroll for the employees. You may also encounter this issue when you are taking a backup of your company file.call us and get the best possible solutions to resolve QuickBooks Error 248.
mongodb training in chennai
ОтветитьУдалитьoracle training in chennai
cloud computing training in chennai
aws training in chennai
b2b seo services in usa
ОтветитьУдалитьenterprise seo services in usa
professional seo services in usa
seo consulting in usa
social media promotion in usa
Thank you for sharing this valuable content.
ОтветитьУдалитьI love your content it's very unique.
DigiDaddy World
VERY HELPFULL POST
ОтветитьУдалитьTHANKS FOR POSTING
MERN STACK TRAININIG IN DELHI SASVBA
ARTIFICIAL INTELLIGENCE INSTITUTE IN DELHI SASVBA
MACHINE LEARNING TRAINING IN DELHI SASVBA
DEEP LEARNING TRAINING IN DELHI NCR SASVBA
GMB
SASVBA
FOR MORE INFO:
this blog is very useful
ОтветитьУдалитьbest-angular-training in chennai |
angular-Course in Chennai
asp.net white space has turned into an advertising space :)
ОтветитьУдалитьno deposit bonus forex 2021 - takipçi satın al - takipçi satın al - takipçi satın al - takipcialdim.com/tiktok-takipci-satin-al/ - instagram beğeni satın al - instagram beğeni satın al - google haritalara yer ekleme - btcturk - tiktok izlenme satın al - sms onay - youtube izlenme satın al - google haritalara yer ekleme - no deposit bonus forex 2021 - tiktok jeton hilesi - tiktok beğeni satın al - binance - takipçi satın al - uc satın al - finanspedia.com - sms onay - sms onay - tiktok takipçi satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - tiktok takipçi satın al - tiktok beğeni satın al - twitter takipçi satın al - trend topic satın al - youtube abone satın al - instagram beğeni satın al - perde modelleri - instagram takipçi satın al - instagram takipçi satın al - cami avizesi - marsbahis
ОтветитьУдалитьExcellent
ОтветитьУдалитьhi
ОтветитьУдалитьHey! Lovely blog. Your blog contains all the details and information related to the topic. In case you are a QuickBooks user, here is good news for you. You may encounter any error like QuickBooks Error, visit at QuickBooks Customer Service Phone Number for quick help.
ОтветитьУдалитьcurrency exchange rates
ОтветитьУдалитьugc net commerce syllabus
ОтветитьУдалитьExcellent blog and I really glad to visit your post. Keep continuing...
ОтветитьУдалитьinternship meaning | internship meaning in tamil | internship work from home | internship certificate format | internship for students | internship letter | Internship completion certificate | internship program | internship certificate online | internship graphic design
Amazing, glad to see this great post. I trust this think help any beginner for their amazing work. By the way a debt of gratitude is in order for share this magnificence from…
ОтветитьУдалитьData Science Training in Hyderabad
I would like to take this opportunity to thank the author for his incredible work. I believe Customer relationship management is essential for every business to create a loyal customer base.
ОтветитьУдалитьTop CRM Software
It was a wonderful chance to visit this kind of site and I am happy to know. Thank you so much for giving us a chance to have this opportunity..
ОтветитьУдалитьdata analytics courses in hyderabad
Как поступить гадание онлайн бесплатно - это обыденный порядок узнать судьбу с использованием различных объектов и приемов. Комплекс воздействий, ориентированных на предвидение судьбы, именуют хиромантия. Сверхъестественные силы и всякие положения хиромантии наукой не доказаны, но многочисленные люди доверяют подобному.
ОтветитьУдалитьGood information and informative content. Keep posting more blogs with us. Thank you.
ОтветитьУдалитьData Science Course in Hyderabad
perde modelleri
ОтветитьУдалитьsms onay
Vodafone mobil ödeme bozdurma
nft nasıl alınır
Ankara Evden Eve Nakliyat
trafik sigortası
Dedektör
Kurma website
aşk kitapları
Hello, Thanks for the valuable information.
ОтветитьУдалитьBusiness accounting and taxation courses
smm panel
ОтветитьУдалитьSMM PANEL
is ilanlari
İnstagram takipçi satın al
HİRDAVATCİ BURADA
BEYAZESYATEKNİKSERVİSİ.COM.TR
Servis
tiktok jeton hilesi
Clearing the whitespace was very difficult, but now i did that with ASP.Net, thanks for the tip. Meanwhile refer
ОтветитьУдалитьDigital marketing courses in Delhi for details about Online Digital marketing courses.
Amazing Content.
ОтветитьУдалитьFinancial modeling course
Excellent article useful
ОтветитьУдалитьpython full stack course
Best python full stack course
Top python full stack course
python full stack course in bangalore
Top python full stack course
prakalpanaBest It course
Thanks for sharing this information.
ОтветитьУдалитьCheck out-
Digital Marketing Courses in Delhi
Very interesting!
ОтветитьУдалитьVisit-
Digital Marketing Course in Dubai
Hi, I am thankful for this useful blog post. It's really helpful. If you are interested in learning digital marketing, here is a complete list of the best online digital marketing courses with certifications. In this article, you will learn about digital marketing and its different strategies, the need for doing digital marketing, the scope of digital marketing, career opportunities after doing online digital marketing, and many more.
ОтветитьУдалитьVisit-
Online Digital Marketing Courses
Great content.
ОтветитьУдалитьDigital Marketing Institutes in chandigarh
A very informative article for programmers. Very hard work done to write such informative blogs. Thank you very much for sharing. For more information please visit at Digital marketing courses in france
ОтветитьУдалитьHi, Nice blog post. I found this blog very informative and useful. If you are interested in learning digital marketing, here is a list of the top 13 digital marketing courses in Ahmedabad with placements. This article will help you decide which institute is best for you to learn digital marketing and will help you to become an efficient and productive digital marketer.
ОтветитьУдалитьVisit- Digital Marketing Courses in Ahmedabad
Useful content! Keep sharing!
ОтветитьУдалитьDigital marketing courses in Singapore
Great article on .Net and ASP.NET. very powerful language and widely used for web development. Thanks for sharing the informative and educational piece of content. If anyone wants to learn Digital Marketing, Please join the highly demanded and most sought skill by the professionals in all streams due to the remarkable growth predicted by international survey agencies. So join today. Find out more detail at
ОтветитьУдалитьDigital marketing courses in france
Thank you for sharing. Keep writing. Content Writing Course in Bangalore
ОтветитьУдалитьThank you for sharing this blog. It helped me a lot in my project.
ОтветитьУдалитьDigital marketing courses in New zealand
Nice blog! Keep updating with this type of information. It's really helpful. If you are interested in building a medical career but are struggling to clear medical entrance exams, Wisdom Academy is the right place to begin. It is one of Mumbai's best NEET coaching institutes for students preparing for medical and other competitive-level entrance examinations. The academy caters to home and group tuitions for NEET by professionals. It offers comprehensive learning resources, advanced study apparatus, doubt-clearing sessions, regular tests, mentoring, expert counseling, and much more. Enroll Now!
ОтветитьУдалитьNEET Coaching in Mumbai
Этот комментарий был удален автором.
ОтветитьУдалитьThank you for sharing this useful blog on your finding on .NET as well as the beneficial thoughts. I would also like to share this blog on the SEM in the field of Digital Marketing. beneficial to use in the field of marketing. To know more visit -
ОтветитьУдалитьSearch Engine Marketing
I always appreciate this kind of content which helps a learner like me a lot. Thank you for sharing. One can also have a look on Digital Marketing Courses in Abu Dhabi
ОтветитьУдалитьNice post. Thanks for sharing! I want people to know just how good this information is in your article. It’s interesting content and Great work.
ОтветитьУдалитьfor Affordable Interior Designer In Gurgaon
visit - lookobeauty
https://lookobeauty.com/best-interior-designer-in-gurgaon/
Thanks so much for sharing your knowledge in this blog. This is a valuable source of information that will help many people. Because we can not stop learning, we provide Digital Marketing Courses in Delhi to help people to understand the power of Digital marketing. Please read here:
ОтветитьУдалитьDigital Marketing Courses in Delhi
Impressed by the article you have published
ОтветитьУдалитьVisit - Digital marketing courses in Singapore
great content
ОтветитьУдалитьHi, This log is truly an educational blog. The formatting is well done with usage of simple words which can be easily understood by the readers. I have bookmarked this blog for future references. Thank you.
ОтветитьУдалитьDigital marketing courses in Ghana
data
ОтветитьУдалитьLooking For Best Makeup Artist Course In Gurgaon. Best Makeup Artist Institute With Affordable Fees, Best Placement Record By Top Makeup Teachers In Gurgaon.
ОтветитьУдалить