I have been trying to find a framework for windows mobile and .Net Compact to connect to an SVN Repository but i havnt been able to find 1.
Is there an SVN Framework out there for .NET Compact?
If there isnt a framework, whats the best way to attempt to connect to an SVN Repository? At the moment im looking to get the revision history.
If your just looking for revision history, you could setup a Apache server to do the SVN calls remotely and return it to Windows Mobile in some other readable format, such as XML.
The otherway would be to find a WebDAV library that works with .Net Compact to make calls to an Apache setup with WebDAV.
It would be some work to set up on your machine, but you could check whether Trac's timeline works on your mobile client. In addition to the revision history, you can browse through the actual code and view diffs.
Trac is fully customizable to you can in theory create a template that is tailored to your mobile client, but in my experience it's not entirely trivial to do.
Related
I have a VPS server with Windows 7, on that server I have placed my Asp.net c# web application. Now how would I do the set up with SVN so that I can check in and check out code from my personal computer?.
NOTE : this is Tortoise SVN
Thank you
The easy way is to install VisualSVNServer on the machine that you're using as the server, then TortoiseSVN on the one that you're using for the developer workstations.
After you install VisualSVNServer, create a repository and it'll show you the URL to the repository, that you can then plug into Tortoise on the dev workstation.
Then add your C# code to the repository using Tortoise, and you're all set.
The best thing to do is to read the Subversion book, as you'll need to have a better understanding of subversion to run a server. It's not terribly difficult, a lot depends on whether you need access to the repository from other computers. If not, you set up a local file based repository without using a server at all. Again, this is all well covered in book.
I need to find or create an HTTP server that will run on a Windows machine and announce its presence via Bonjour(Zeroconf). I've searched all over the web and can't seem to find anything that fits the bill or even any information about how I would go about adding the Bonjour functionality to a server that I create.
I found that apache has mod_zeroconf, but it only runs under Linux and found that Apple provides a Bonjour installer for Windows, but it doesn't appear to add the announce functionality. I feel like I may be searching in the wrong places.
For my current project I'm ok with using something off-the-shelf, building with C#/.Net, or even rolling a rails/rack based server and setting up the announcement as a separate process.
I suspect you'll need to integrate Mono.Zeroconf.
We are planning to develop a Silverlight 'cross platform' application, that is expected to run on both Windows and Mac with elevated permissions. Mono alone is not an option, as the application requires Silverlight specific video features, supported only in SL 4.0
So, here are some considerations.
1 - The 'Application', should interface with a local database (outside Isolated storage)
2 - The application should be able to talk to native libraries for performing some DVD IO operations.
3 - It has to be installed via a custom installer, much like a desktop app
We are trying to identify the best way to to satisfy the requirements, if possible, with a common code base, probably using SQLLite for the database.
In Windows, things are straight forward. You can use sllauncher to install the XAP with elevated permissions, and you can access the SQLLite and other system level operations via probably a COM layer. Not a big deal.
But how to implement interfacing with SQLLite and system level libraries in Mac? Is there a documented/undocumented way to interface with Mac libraries from Silverlight (Mac)? I think no. One option might be to use Mono's XSP web server, and run an ASP.NET site from the local machine, and host the XAP locally, and then implement a handshake with the ASP.NET code running via Mono/XSP, and then do the interfacing from there.
Another option will be to host the Silverlight in the Mono's Winforms browser control (I still need to see if this is possible), and then do the talking between Mono Winforms browser and Silverlight via HTML DOM.
Both are not straight forward options in Mac.
I highly appreciate any inputs you can provide to achieve the objectives in a better way.
Part of the solution could be to define an interface on your database. In windows you could choose to talk directly to it, and for mac you write a soap server. Your silverlight app should be allowed to talk to that. You can implement the soap server in mono, then you have one language all way....
I don't believe the Winforms browser control works on Mac, but you could try MonoMac instead.
Is there a light weight version of SQL Server I could use that has the characteristics of:
Free (assuming my winforms app is semi-commercial)
Can be seemlessly packaged for deployment as part of the winforms click-once application? (i.e. ease in installation for the user).
Light weight for the user (ideally something that just runs when the winforms application that uses it is running - but better than using XML sererialization for persistance).
Thanks
Yes - SQL Server Compact Edition:
Build embedded database applications for desktops and mobile devices
SQL Server Compact 3.5 is a free, easy-to-use embedded database engine that lets developers build robust Windows Desktop and mobile applications that run on all Windows platforms including Windows XP, Vista, Pocket PC, and Smartphone.
SQL Server CE is a set of DLL's you can ship included in your app.
SQL Server 2008 Express is also free, but it's a stand-alone server installation.
Marc
I don't know about any such (Microsoft) SQL server version. But if I'm in such situation I'll definitely go for SQLite or Firebird
Compact:
- you don't need to change logic of you application;
- MS Sql Management studio could be use to edit,create data structure visually ;)
- deployment, second time deployments more easy :)
SQLite:
- look in google search for the problems:), there lot of people who works with it and have problems, not form begining but during implementation "conctetical" tasks /projects
- no exists native visual interface to work with dbase (exist 3party products for that but they aren't free);
- again 2nd, 3 ... deployments needs more attention,time money :) ...
so, for me is beeter to work with MSSqlCompact, because i am working with .net kind of projects, i have to support my results, i must provide stable application etc...
Best choice is SQLite. There's ADO.NET implementation on .NET so its as easy to use as any other DB. Well, good example is Google Chrome.
There's only one unresolved issue: security. It's a pain to restrict access to SQLite database file as far as I know.
At our company we are going to develop more for the Windows platform than we have done up until now. As this scale of Windows development is new to us it would be nice with some feedback from experienced developers.
Requirements we have:
5 developers from the beginning.
15 developers a year from now.
All developers should be able to develop at the same time.
Be able to develop solution for ASP.NET and EpiServer 5.
Our idea:
A shared server which developers use for development through Terminal Services.
SQL Server Express.
Start with some free express edition of Visual Studio, upgrade to a commercial version if we need the additional features.
Use IIS and not the web server built into Visual Studio.
Questions:
Are we on the right track?
In terms of license costs the above should be cheapest, right?
What do you think about multiple developers doing development using a shared TS-server?
Do you know of any company which has a similar development environment?
Are we going to miss some features of the full Visual Studio version immediately? Is using Express version a bad choice?
Is IIS the best choice? If use IIS the developers may use the same port for deployment. If we use the built in web server each one has to set their own port as we're sharing a machine.
Comment answer:
We are thinking about a shared server as it will most likely decrease the license costs. So it's purely a cost issue. We are using CVS for version control. Our situation is that we develop on Mac and Linux, that's why buying 1 server license + Visual Studio licenses seems to be a cost effective way of starting this type of development.
Since you are referring to EPiServer my recommendation is to use Visual Studio's built in web server on each developer's PC. Then get some kind of Windows Server and run SQL Server and IIS on it. Also use some kind of DNS service that allows you to create sub domain host names that you use to run multiple port 80 sites on the IIS.
I don't know the exact terms but you might be able to run SQL Developer Edition in this scenario instead of Express. Then you get the full set of management tools, no size limit on databases and support to import and export data. If you got customers with both 2005 and 2008 SQL Servers you should run both versions as two different instances so that you can move, create and restore database backups easily between environments.
Developers all connect to the same database while developing and when appropriate deploy their projects to the server's IIS web site. If you like you can allow a customer to use it as test site.
I would put the free VisualSVN Server on the server too and use that instead of CVS.
I would also look into renting this as a virtual server somewhere and use some kind of VPN to access it.
If you can live with the limitations I don't see any problems using VS Express.
Good luck!
I second Numenor's comment -- go with a free source control like Subversion. I would be scared to develop on Terminal Services for the simple reason that Visual Studio can be a resource hog if you start doing any debugging. I'm assuming you're going to have more than one person on the project at a time, and I'd think you could get desktops that would work out better for a lower price than a large server that could accommodate those types of terminal server sessions.
On top of that, if you have multiple people working on a project on the same physical box, you're going to have problems with two people changing one file...back to the source control recommendation.
Andrew Siemer has some great articles outlining how to set up a development environment. Interestingly enough, they're in his series-in-progress about setting up a StackOverflow type of site. Start with this one, then follow the series to get the scoop on automated builds.
Edit: You probably don't want to use CodePlex as Andrew outlines, but a private Subversion server would work the same way with TortoiseSVN. You can get Subversion from CollabNet.