Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I'm working on creating my first WPF application, whereas I have only used WinForms in the past. I've familiarized myself with the basics of MVVM, but certainly need practice to get a deeper understanding.
It seems like the Orchestra Shell written on top of Catel is a good way to start a new application as it has many built-in features including an MVVM framework.
The WPF application I'm interested in developing is a utility to help with administration (viewing logs, checking service status, etc) of a specific enterprise application and would include:
Fluent Ribbon
Avalon Docking
Ability for other developers to write plugins
As a WPF/MVVM novice, I'm having difficulty understanding the best way to get going with Orchestra, and it seems as though the getting started guide included in the docs folder on github is a bit outdated.
The examples provided as well as the LogViewer application are great, but I could really use some pointers with getting started. Does anyone know of an up-to-date getting started document for Orchestra, or would anyone be willing to provide some high-level steps?
Here are my preliminary thoughts on the steps required, but I'm not sure if this is the right approach:
Create a blank WPF project
Install Orchestra FluentRibbon using NuGet
Create a main view that contains the fluent ribbon
Create Prism Modules? for each component to be added to the
application
Example of components (Prism Modules?):
Connect/disconnect to application server
Load/show plugins
Any help/guidance would be appreciated -- perhaps starting w/ Orchestra is just not a good idea for a WPF/MVVM novice like me?
Thanks in advance!
The best way to start is to take a look at the examples that are included in the Orchestra repository. For example, the Fluent Ribbon examples gives you an idea how to implement the ShellService.
After that, if you are looking for modularity with Catel and Prism, I recommend that you take a look at the Catel examples repository.
If you have more direct questions, feel free to chat with the team of any of the components using gitter.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
We are building a new Business Application using .NET technologies. First we started looking at some Javascript frameworks as we are basically converting a windows app to a web app so we thought using JS would give the same user experience as win forms.
We looked at many including Angular (no rich controls), KendoUI and WIJMO but ended up writing lots of JS and our prototype project became complicated as we used the SPA (Single page application) approach.
Is there is a way to get the simplicity of ASP.NET MVC and the great user experience of JS frameworks? Has anyone had any experience with building a Business Application? What are the recommendations?
Thanks
Yes, we use a mixture of these technologies and a simple eventing strategy for communication between the server/client
SignalR - for a persistent event pipe (transport)
Angular - DOM manipulation/data binding
Bootstrap - Great starting point.
MVC - awesome asset pipe-lining in .net, allows for the bundling of lots of js files into one, and partials allow for sane management of a very componentized page structure.
TypeScript - at scale js is very hard to maintain, refactor and debug, typescript removes an entire class of run-time errors and allows for very good code completion and refactoring tools in Visual Studio with ReSharper.
Look into Ext JS from Sencha.
Ext JS uses an MVC architecture and has a whole bunch of nice user interface widgets.
Disclaimer: I am not affiliated with Sencha in any way. My company, however, does use their framework in our applications.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I am wondering whether there's a good tutorial that walks you through the development of a full business application that is comparable to the real ones. I have learned the basics of C#, WPF, and programming and web development in general. All the books I have read only shows the syntax and code snippets but very rare shows you the development of a full business application from planning to testing to deployment.
What is the first step when creating a business application using C#/WPF? I know I need to have a plan first. Should I use UML?
What methodologies or techniques should I consider when starting to code. I have read about Domain Driven Design but there is also MVVM patterm. Which one should I use? Should I learn both of them.
I am currently searching for a work in .NET but I really need to know how the developer's workflow in a real life software development team. I have found some books that walks you through the creation of a full software such as Wrox's Problem-Design-Solution books. Does the content of this book comparable to the workflows of a real-life software development?
Thanks a lot in advance and I hope I can find an answer as I am planning to practice my skills to be ready in a corporate environment.
Um, the platform is irrelevant at this point. If you were doing a winform or a web app, would you use UML? If so, then you would also use it in a WPF. If not, fuggedaboutit.
The first step is to careful gather business requirements.
The methodologies or techniques you should consider when starting to code will be handed down to you by the lead of the project. You sound very inexperienced, so the decision will not be up to you, most likely. Every business is different. Heck, every project is different. You may use a different methodology on each of your first 5 projects. Brush up on them, read what you can, but you will always have a learning curve to climb.
You don't need to learn every methodology or paradigm. Learn as you go. Understand the basic premises of a few, especially the standard waterfall, but don't deep dive until you get assigned to a project. Most places I have been don't follow their own methodologies anyway. It's one of those "The Sabbath was made for man, not man for the Sabbath" type things. Organizations will deviate for a slew of reasons.
This is the book I had in college. It has served me well. You car order it for $0.33. Ain't that something. http://www.amazon.com/Software-Engineering-7th-Ian-Sommerville/dp/0321210263/ref=sr_1_25?s=books&ie=UTF8&qid=1342506249&sr=1-25&keywords=software+engineering
Good luck in the field. Just dive in, and work hard. You should be fine.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I am beginning a Software Engineering dissertation in which I have a dental practice as a client who I will be developing software for. The client has issues of requirements and the current software is constantly upgraded through patches.
Im trying to argue the idea that the underlying requirements are bad, and to develop a new piece of software that is able to mould to meet changes. I also want the software to be generic so it could be deployed to various dental practices who could customize it to toggle particular features on.
The idea I have is to consider each feature as a plugin. This way the application should simply host the enabled plugins and they could be toggled on/off, and upgraded invidually without the need of a hard change to the application.
I would appreciate if you could help me with the following questions I have:
Is this a good approach?
Is there a .NET framework already that caters for this well?
Are there any significant problems I should be aware of?
Sorry for the big intro guys, and I appreciate any response I get at all.
Many thanks
Mike
The Managed Extensibility Framework is built into .NET 4.0, and is available from CodePlex as a dll for earlier versions.
I know MEF as MS recomended framework for pluggable aplications, but maybe some IoC framework can helps you also. Recommended by MS is Unity (developed under Microsoft Patterns and Praciticies) unity on codeplex
I have used HTML, WinForms, ASPX, WPF, WCF, Web service, Silverlight, PRISM, MEF for applications in the last few years and my personal choices (given no restraints on a new project) would be:
WPF or Silverlight (Update: I would swing more towards WPF, now that Silverlight is no longer broadly supported)
WCF services
A modular framework like PRISM (which now includes MEF)
PRISM is the biggest gain as the components you build really are loosely coupled and modules can be developed independently without developers breaking each other's code.
For something specific like a dental practice hopefully you will be able to build a layer on top of general purpose plugin frameworks.
The plug-ins, and their container, should be specialized for the domain. The best way to identify what that that specialization should be is to enumerate several plug-ins that would be appropriate for this software, recognize what is common amongst them and abstract/represent them in your framework.
I know this is not very concrete but hopefully somewhat useful.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 1 year ago.
Improve this question
I want to know how could I write a program in C# that opens a browser and go to google.com (I did that easily)
I want to write code to automate move mouse to the input text field, click the mouse and then enter some text. move mouse to search button and hit it.
I know I should deal with iAccessible interface but I did not find any useful source.
Any help will be appreciated.
You can also try Winium, an automation library similar to Selenium through which you can do automated testing and instruct it to perform testing even on remote machines. We have used it at our organization in combination with Selenium to perform automated testing of Windows and Web modules. It is free to use and open source. Here are the links.
https://github.com/2gis/Winium and https://github.com/2gis/Winium.Desktop
Look at the Windows Automation API: http://msdn.microsoft.com/en-us/library/ms726294(VS.85).aspx
and the Test API: testapi.codeplex.com which has some related packages you'll likely need.
Sorry, can't post more than one link yet, but add the usual bits to get to the TestAPI site on codeplex.
You can try Visual Studio Test Suite it lets you record how you interact with your application and then lets you run it automaticly.
It's a powerful product.
If you're looking to understand UI Automation, I've just started that myself. I wrote this project so that other people could use it or understand themselves too:
http://code.google.com/p/wipflash/
Mostly it's based around the Patterns and Properties. You can see how I've used the Patterns here:
http://code.google.com/p/wipflash/source/browse/#hg/WiPFlash/Framework/Patterns
Hope it helps.
(Edit: I also answered a similar question here: WPF, Project White and Infragistics - you're probably looking for the ValuePattern).
There is a commercial solution that would do the job: Telerik WebUI Test Studio. It also supports Silverlight apps.
http://www.telerik.com/automated-testing-tools.aspx
Here is one positive review:
http://fczaja.blogspot.com/2011/01/ui-tests-automation-for-silverlight.html
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I am currently trying to get my head round DI and IoC.
Blogs and article are all well and good but I'd like to see some real working source code however I am currently stuck with web forms at work for the time being and most open source projects that I know of that are implementing these kind of development practices seem to be based on ASP.NET MVC i.e. nerd dinner.
Can anyone point me in the direction of an open source web form based project that uses DI/IoC?
The MSDN page for Unity contains a tiny web project. It might not be as big a project as you're looking for, but it's really clear and should help with understanding.
Take a look at n2 cms it's an open source CMS
I strongly recommend ninject and the guide that comes with it.
There are a few reasons why I make the recommendation. First, because it is how I learned about using actual IoC containers. Second, because the guide is very strait forward with examples using poor man's DI, to using ninject, to some of the really cool things you can do with ninject. Lastly, ninject is one of the easier to work with OSS IoC containers and it doesn't need xml configuration.
That said. Once you get confortable with ninject, make sure you check out Structure Map and castle windsor
Also get familiar with the singleton pattern, because it adds a lot of value to what you will need to do with inversion of control and without it, a lot of the IoC features may not seem valuable.
Once you have a feel for what an IoC container can be useful for, you will know where you can use one in your ASP.NET applications. As for specific examples, why not create one after you learn?
What about Spring.NET? I've used it successfully on ASP.NET (non-MVC) projects, it works very well. While I can't point you at a specific project which uses it, it is pretty well documented and has many samples.
Take a look at Sharp Architecture. It has a sample project (Northwind) withe DI
http://code.google.com/p/sharp-architecture/
Take a look at the Web Client Software Factory