I have a client with dnn website. I need to develop module for it. How I can start? I'm using Microsoft Visual Studio 2010 now (trial version). I cannot access source code, just make new module and install it. What is the best practice to start on the environment like this? Other question is if I using trial version of visual studio, is my module will expire too?
These materials, especially video tutorials, might be really helpful to you when getting started with DNN module development: http://www.dotnetnuke.com/Resources/Wiki/Page/Module-Development.aspx They cover every part from installing DNN module project templates to development and packaging of the custom DNN module.
To your second question, the answer is no, your module will not expire after VS2010 trial expires. Another option for you is to use free express editions of visual studio 2010, for this case Visual Web Developer 2010. You can download it here: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-web-developer-express You will not be able to use source control directly from express edition, but still there is option to use SVN and a client like TortoiseSVN.
Purchase and read this book: Professional DotNetNuke Module Programming
Visit the download page of DotNetNuke.com
Download the Community Edition. Install it on your dev machine, get it working.
Hook the Desktop Modules folder and bin folder (at least) to your source control
At the download page above, install the Visual Studio Starter Kit
Restart Visual Studio 2010
Start up Visual Studio 2010, create a new compiled DNN module project, make sure its location is in the Desktop Modules folder of DNN
Implement some test code
Install the module on DNN (install by manifest)
Add the module to a DNN page. Test it.
Make updates to your DNN module. You only need to uninstall and reinstall the module if you add or remove files or change the database setup scripts.
Build a deployable version of your module. (You make a zip file or something. Just read the book. I always have to refer back for this step)
Practice installing the DNN module on another fresh DNN Community Installation.
Once you are satisfied that it is installing correctly, install the module on the live site (Do backups first, just in case)
Related
I found that the windows visual studio extension is targeted to .net framework and only .net framework (which seems not clearly described in the docs?), after switching our custom mono debugger extension to .net 7.0, with framework not compatible (between vsix project's .net framework 4.8 and debugger project's .net 7.0) error when building the vsix project.
If I switch the debugger project target back to .net framework 4.8 then I can build the extension along with the debugger and create a vsix bundle them togeter successfully.
I tried the previewing visual studio extensibility tools: the out-of-process solution, but the out-of-process way seems not have access to the dte object, thus no way to send the debug adapter launch command. If I use the in-process solution, then we head back to the .net framework target :(
The mono debugger extension is a "3rd party executable file" that launched by visual studio debug adapter. If I manually paste the .net 7.0 version mono debugger to the extension install location, the extension can still work with the debugger. I manage the debugger project and the vsix project within a solution is for easier project management only, in fact they are not referenced directly in code.
I switched our mono debugger project to .net 7.0 is for trying to upgrade our toolset to the newest unified framework (every other tool in our team are upgraded to .net 7.0).
TL;DR, how can we bundle a none .net framework targeted project along with a windows visual studio extension, which is targeted to .net framework only? Or how can we integrate/bundle/add built exe,dlls into the vsix container?
There are some solutions from other stackoverflow answers such as add dlls using vsixmanifest, but it can only add dll file, and the way it handle asset file seems not quite right, it just copy the dll to vsix project folder once, meaning it won't get updated when the dll's project rebuild.
Here I managed to bundle the files in a wonky way:
I create a publish folder under vsix project folder,
then copy the published debugger project file to it, add them as existing file to vsix project, and configure them as vsix content, copy to vsix,
then add a pre-build event for the vsix project, publishing our debugger project and output to this publish folder.
With process above, I can package the published file into vsix when trigger vsix project build.
For anyone have similar issue, you can have a try.
My solution is a net 5 solution. I've been through all of the nuget packages to make sure they are all 'net5' compatible and checked that all the .csproj target frameworks do indeed say net5.0 yet when I go to package my application (MyProj.Installer - Windows packaging application) it shows me a warning:
Warning NU1702 ProjectReference 'C:\Users\rich-\source\repos\MyProjGit\MyProj\MyProj.csproj' was resolved using '.NETCoreApp,Version=v6.0' instead of the project target framework '.NETFramework,Version=v4.5.1'. This project may not be fully compatible with your project. MyProj.Installer C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets 1718
I have no idea where it is getting .NETFramework,Version=v4.5.1 from as the oldest version my project has ever been is 4.7.2 but more to the point it thinks it is a net6 application when it is a net5 application.
It goes through and packages the app as an msix file and I can install it after signing of course however the app fails to launch and I believe the reason is down to the warning I describe above. Am I missing any steps for packaging a net 5 application? I've taken the exact steps I have for a net framework application that have worked in the past.
So the app not loading was two fold. The app primarily didn't load as Entity Framework core 5 is referencing the wrong version of SQL Client. See https://github.com/dotnet/SqlClient/issues/652.
The second reason why the app wouldn't load was because the msix was trying to access a file I had open on another networked computer. See the section common problems https://learn.microsoft.com/en-us/windows/msix/packaging-tool/tool-known-issues.
Still no idea why the packaging project think it is net6 howwever.
I have already published dnn website. So Can I add my custom module in it?
I have purchased DNNGoxNews the module with source code from dnn store.
Now I want to modify some of the fields from some user control So How Can I achieve this.
I have already installed the module in my dnn website.But How can I modify the module.
Please point me the right direction.
Thank You
You will want to install this module in a development environment, which typically means a local copy of DNN
Follow this tutorial for how to setup your development environment.
Once that environment is setup, go to the HOST/EXTENSIONS page
Install the SOURCE package of the module you purchased
Open up the Project file, or Solution, in Visual Studio 2015
Make your changes, compile the module/changes
Repackage the module for deployment, if the source code doesn't do it for you automatically you can follow this tutorial.
I am new developer in DNN. but I create a new Module in C#. How can i solve "Msbulid.Community.tasks.XmlReal"" error during when I release mode build.
It seems as though Visual Studio did not download the nuget package for MSBuildTasks. Right click on the project, click "Manage Nuget Packages". If MSBuildTasks does not show as installed, Browse for it by name and install the version 1.4.0.128. After installing do a Release Build again.
As you're new to DNN, be sure to also check out creating Apps in 2sxc. It's like modules, just much easier and has much more pre-built like image-handling, data import/export and more.
First of all, I am very beginner in using node.js / angualar.js /protractor.js and jasmine.js stuff and I am not from web dev corner at all.
But for now, I just want to create some protractor test for an angular app and this is actually working quite fine. But I am wondering if it's possible to get VS2013 intellisense working?
I would really appreciate if VS would suggest functions of objects like 'browser.xxx'.
I am really stuck with that, looking forward for some hints!
thx Florian
Ill just give an answer to myself! To get Visual Studio 2013 intellisense and debugging working for angular protractor tests, follow these steps:
Install node.js
Install protractor (global) („npm install -g protractor“; „webdriver-manager update“)
Install Visual Studio 2013 node.js Tools
Install Visual Studio 2013 TypeScript Tools
Create a new project „Typescript\Node.js\Blank Node.js Console Application“
Add your „conf.ts“ and „spec.ts“ files to the project
Right click on „conf.ts“ and select „Set as node.js startup file“
In „Project properties“ set your „Node.exe path“ to your protractor executeable file, eg. „C:\Users\myUser\AppData\Roaming\npm\protractor.cmd“
Download typescript DefinitelyTyped definitions from git hub:
https://github.com/borisyankov/DefinitelyTyped
In your VS2013 project folder „Scripts\Typing“ create the subfolders „jasmine“, „protractor“ and „selenium-webdriver“
Add the typing definition files "angular-protractor\angular-protractor.d.ts", "jasmine\jasmine.d.ts" and "selenium-webdriver\selenium-webdriver.d.ts" into the appropriate project folders you created in the step above.
Write your protractor test and enjoy code highlighting
Start webdriver-manger „webdriver-manager start“
Hit „F5“ to start debugging
Enjoy!
Florian