|
Ithaqua posted:Why do you want to use Git over standard TFVC? No particularly good reason, we are leaving SVN and one of us already has Git experience. I appreciate your thoughts and I'll pass them along, thank you.
|
# ? Feb 1, 2014 01:18 |
|
|
# ? Jun 5, 2024 03:13 |
|
Opulent Ceremony posted:No particularly good reason, we are leaving SVN and one of us already has Git experience. I appreciate your thoughts and I'll pass them along, thank you. Consider using TFVC. The workflow for TFVC is conceptually closer to SVN, and I think you'll end up with fewer growing pains by using it.
|
# ? Feb 1, 2014 01:41 |
|
Git is awesome. Being able to commit locally is nice, but it really shines in a team environment when you start throwing pull requests around and branching like it's nothing. This is coming from someone who is not a git enthusiast.
|
# ? Feb 1, 2014 02:25 |
|
Opulent Ceremony posted:1) Single TFS project, single Git repo where each solution is in a different branch (really multiple branches per solution for development/production etc). Seems like switching between branches to get to a different solution would suck, because we couldn't work on more than one solution/branch without committing changes before the branch switch? Also seems to take a long time to switch between branches since it removes and adds a bunch of files each time. glompix posted:Git is awesome. Being able to commit locally is nice, but it really shines in a team environment when you start throwing pull requests around and branching like it's nothing. This is coming from someone who is not a git enthusiast. ManoliIsFat fucked around with this message at 04:32 on Feb 1, 2014 |
# ? Feb 1, 2014 03:14 |
|
Source control has been a strange evolution for me. Initially it seems a lot more sensible to just do the whole "checkout this file when I'm using it and check it back in when I'm done" thing, since it's easy for people to think in terms of files. Over time, though, I warmed up to the concepts of change sets and the whole Git model of commits pointing to other commits. Nowadays, I can't stand going anywhere near file checkout based source control systems. Admittedly, newer versions of SVN do a much better job of handling commits in terms of changesets rather than whole files, but some things are still pretty clunky with it. Probably the worst part of Git is the variety of strange command names that each have a list of arcane flags which presents a substantial learning barrier. Once you get over that barrier, though, it's great. I have no experience with TF-anything so I can't really talk to that. ------------ On a completely unrelated note, I recently inherited a code base for a desktop application that we're fixing up. It stores some data in a hard-coded path on the C: drive, so I decided to move it somewhere else and make the path configurable. By default, I decided to place it in a folder relative to the working directory since I could at least guarantee that the folder exists. Now, I've been working on web applications for the past while, so I somehow missed out on this whole UAC Virtual Store crap that redirects your file modifications to some random folder deep in the current user's AppData. The application I'm working with needs to have data stored available to all users, so I ended up moving it to %PROGRAMDATA% and that seems to work fine. However, the problem I run into now is that I was using the .NET configuration manager to store settings (again, for all users) which defaults to changing the configuration in the working directory. That, of course, gets redirected to the Virtual Store so the settings are no longer the same for all users. So, after all that rambling, my question is: what is the best practice for storing non-user specific application data and configuration in Windows Vista and above?
|
# ? Feb 1, 2014 04:12 |
|
ManoliIsFat posted:I never really got in to TFS. The way they defined their whole unique language to describe everything kinda threw me off, felt rinky-dink. You can't really sell git by using its nomenclature.
|
# ? Feb 1, 2014 04:21 |
|
GrumpyDoctor posted:You can't really sell git by using its nomenclature.
|
# ? Feb 1, 2014 04:34 |
|
Bognar posted:So, after all that rambling, my question is: what is the best practice for storing non-user specific application data and configuration in Windows Vista and above? Off the top of my head, registry, Program Data, or maybe even a data file (e.g. Sql Express). Program data folder is exactly there for that reason though. ProgramData for global settings and AppData for user specific is a good guideline. crashdome fucked around with this message at 07:18 on Feb 1, 2014 |
# ? Feb 1, 2014 07:05 |
|
Bognar posted:So, after all that rambling, my question is: what is the best practice for storing non-user specific application data and configuration in Windows Vista and above? I think it's almost criminal that .NET has been around for this long and we don't have a good cascading configuration scheme built in.
|
# ? Feb 1, 2014 08:53 |
|
I'm trying to do some dynamic routing based off database entries in ASP.NET MVC. So I set up my default route to go to a controller, passing in the full URL like this:code:
code:
code:
|
# ? Feb 1, 2014 23:32 |
|
I just finished Seerman's Dependency Injection in .Net, and am now tackling the 3rd edition of C# in Depth, but that isn't a cover to cover type book. What should I look at reading next? I am getting more interested in architecture and design patterns. Is the a more modern book recommended than Gang of Four or is that the best still?
|
# ? Feb 2, 2014 03:50 |
I finished C# in Depth recently, it felt easy to read cover to cover, I only struggled with expression trees and dynamic, but I have no background experience whatsoever. The other two .Net-specific books I'm reading now are CLR via C# and The Art of Unit Testing. This doesn't quite answer your question I think, but the two spend many pages discussing good practices, and I've never seen anybody complain about either.
|
|
# ? Feb 2, 2014 17:03 |
|
Dirk Pitt posted:I just finished Seerman's Dependency Injection in .Net, As for a follow-up to design pattern reading, I really liked Coplein's Lean Architecture, which takes a very people-oriented approach. Then again I'm a newbie so there's a decent chance it's a pile of crap and I just don't know enough to recognise it.
|
# ? Feb 2, 2014 17:03 |
|
If you have a post action on a controller and your model uses an input from the form, do you call he method doing the background stuff in the initial controller's post or the next controller's get? I realize it doesn't really matter I guess but I'm just curious if there is a best practice.
|
# ? Feb 2, 2014 18:56 |
|
Dirk Pitt posted:I just finished Seerman's Dependency Injection in .Net, and am now tackling the 3rd edition of C# in Depth, but that isn't a cover to cover type book. For design patterns I liked Head First Design Patterns. It's a bit "simple" but I thought the examples were pretty good and even though it's in Java the code translates over to C# pretty easily. I haven't had a chance to read Gang of Four so I can't compare. There's also Pragmatic Programmer and Code Complete 2. If you can borrow someones copy of Clean Code that's a good book but it's heavy on the Java frameworks.
|
# ? Feb 2, 2014 21:43 |
|
Does anyone have any idea why "regedit /s something.reg", when run as a post-build event for a WiX project, won't work, even though the exact same command run manually works fine? It's actually opening the file correctly but if I leave off the /s the error message is a generic "no idea" one.
|
# ? Feb 2, 2014 23:37 |
|
GrumpyDoctor posted:Does anyone have any idea why "regedit /s something.reg", when run as a post-build event for a WiX project, won't work, even though the exact same command run manually works fine? It's actually opening the file correctly but if I leave off the /s the error message is a generic "no idea" one. Regedit rights depend on the user you're logged in as, so maybe the post-build event is being invoked as a different user than what your cmd.exe runs as?
|
# ? Feb 3, 2014 00:31 |
|
Are you running VS in 32bit mode? Your script might be writing to wow64node.
|
# ? Feb 3, 2014 00:59 |
|
Uziel posted:If you have a post action on a controller and your model uses an input from the form, do you call he method doing the background stuff in the initial controller's post or the next controller's get? I realize it doesn't really matter I guess but I'm just curious if there is a best practice. HTTP POST is generally recognized as causing a modification to some data while GET is used for queries. You should be able to call a GET method any number of times without causing a change in the result. If you're doing something with side effects, do it in the POST.
|
# ? Feb 3, 2014 03:12 |
|
I've kind of given up on my original attempt at doing rewrites through an actionresult. Instead I'm working at the RouteHandler level, examining the incoming request, looking to see if that matches my database, then trying to modify the RequestContext.RouteData to cause the MvcHandler to send it all to the right place. I'm really close-- I'm able to find the correct route from the RouteTable (by generating my own HttpContextBase from the new URL and asking the routetable about that), but it always ends up calling my action with a null parameter. I'm losing it on how the parameters end up getting to the actual controller action from the querystring if they weren't specified on the route itself. What part of the MVC stack does that, and how?
|
# ? Feb 3, 2014 20:10 |
|
Ithaqua posted:First off, answer this question: Why do you want to use Git over standard TFVC? Git is generally a lot harder to use effectively. Full disclosure: I am massively biased against Git. How do you figure?
|
# ? Feb 4, 2014 03:29 |
|
Let me propose a scenario: There is a WCF service (though it could be WebAPI or whatever else for all it matters). This service is only consumed internally. There are about 20 different interfaces exposed. There are 4 clients of this service. All are in the same solution with the service. It is suspected, but not proven, that 20-50% of all the API calls exposed across those 20 interfaces are never called; they are simply legacy cruft. My question: how can I find the unused calls without having to right-click and find references on each and every method in each interface?
|
# ? Feb 4, 2014 17:12 |
|
Add logging to your service and let it run for a few weeks. You could also remove the calls, deploy to your staging environment, and recompile all of the applications that use your service. As long as they are referencing the service the compiler should find calls that are now missing. If you have something calling the service using HTTPClient you won't find missing calls until run time.
|
# ? Feb 4, 2014 17:26 |
|
If it is over HTTP and they left the logging on you should be able to figure out a bunch based on that -- especially with webAPI where the endpoints will have different / methods. Check out http://www.iis.net/downloads/community/2010/04/log-parser-22 for an easy way to data mine said logs.
|
# ? Feb 4, 2014 17:59 |
|
Any opinions on how to handle a single user system? I have a very tiny personal project made in MVC, that has a tiny single table database and I want to be able to CRUD items. There is no need for anyone else to login or authenticate as there is nothing to do other than get the database items displayed in a table and a google map.
|
# ? Feb 4, 2014 18:27 |
|
Here at work we use a three layer architecture on our server and the service sitting on the database; DataService->Repository->Controller injected as such, and the DataService calls the service which is constructed DataAccessLayer->ServiceLogicLayer->Service. Are there any vs plugins or scripts that can help automate just setting up the boilerplate of one calling the other, setting up the constructor, the interfaces, and such? It seems to take an inordinate amount of time, and at least just the hot-potato part of "I call foo, foo calls bar, bar calls baz, baz discos my wsdl bla bla bla" should be trivial enough to be automated.
|
# ? Feb 4, 2014 20:45 |
|
2banks1swap.avi posted:Here at work we use a three layer architecture on our server and the service sitting on the database; DataService->Repository->Controller injected as such, and the DataService calls the service which is constructed DataAccessLayer->ServiceLogicLayer->Service. Use an IOC container?
|
# ? Feb 4, 2014 20:48 |
|
Ithaqua posted:Use an IOC container? We did once! But now we don't. Not sure why. That's something I need to ask.
|
# ? Feb 4, 2014 20:56 |
|
Uziel posted:Any opinions on how to handle a single user system? I have a very tiny personal project made in MVC, that has a tiny single table database and I want to be able to CRUD items. There is no need for anyone else to login or authenticate as there is nothing to do other than get the database items displayed in a table and a google map. My default option is to just use windows auth (or basic or digest if it needs to survive proxies). Simple to implement (add configuration, add [Authorize] attributes), easy to manage (need multiuser -- just add windows users), secure enough if you've got SSL in place. If you don't want to mess with that you can pretty easily jack into the forms auth plumbing to login using whatever magic user / pass combo you want. Then you can ride all the [Authorize] attributes, etc, all the way to the bank.
|
# ? Feb 4, 2014 21:18 |
|
2banks1swap.avi posted:We did once! But now we don't. Not sure why. OK, asked, and phew, big answer. Basically, we have the standards of $CLIENT to stick to which are very rigid, the fact that our cases are often extremely complex, and trying to configure automation was much more work than just doing it ourselves since we have few default cases, so to speak. It's not TERRIBLE, but I do wish I had a konami code to just spit out classes/interfaces/method stubs with some basic calling and returning to go fill in myself to work in. I should try to write one.
|
# ? Feb 4, 2014 22:34 |
|
2banks1swap.avi posted:It's not TERRIBLE, but I do wish I had a konami code to just spit out classes/interfaces/method stubs with some basic calling and returning to go fill in myself to work in. I should try to write one. I don't quite understand what you're asking for, but maybe code snippets (or whatever the equivalent is in your IDE) is what you're looking for?
|
# ? Feb 4, 2014 22:51 |
|
wwb posted:My default option is to just use windows auth (or basic or digest if it needs to survive proxies). Simple to implement (add configuration, add [Authorize] attributes), easy to manage (need multiuser -- just add windows users), secure enough if you've got SSL in place.
|
# ? Feb 4, 2014 23:39 |
|
A weird bug (can I even call it that?) happened to me at work in VS 2010, .NET 3.5... Decided to come home and try it in 2012 using .NET 4.5: I set a Breakpoint on my KeyDown event that checks to see if the user hit the Delete key. So I run it, press Delete... and KeyCode evaluates to MButton | RButton | Back | Space If I go and look at the actual Key enum: Delete = 46 RButton = 2 MButton = 4 Back = 8 Space = 32 32 + 8 + 4 +2 = 46. I don't really understand what I'm observing, but the IF statement still evaluates properly. I was hoping someone could explain
|
# ? Feb 5, 2014 01:03 |
|
It looks like Microsoft refused to follow their own guidelines for flags, which is sure to cause much merriment and rejoicing for anyone wondering why someone hitting the delete key keeps triggering their code that's listening for a space bar. Or, you've got the wrong enum values somehow.
|
# ? Feb 5, 2014 02:26 |
|
It's normal to create special flags for commonly used combinationsC# code:
But what's happening here actually dates back to win32 when bits were at a premium http://msdn.microsoft.com/en-us/library/system.windows.forms.keys(v=vs.110).aspx posted:In the Win32 application programming interface (API) a key value has two halves, with the high-order bits containing the key code (which is the same as a Windows virtual key code), and the low-order bits representing key modifiers such as the SHIFT, CONTROL, and ALT keys.
|
# ? Feb 5, 2014 02:51 |
|
2banks1swap.avi posted:We did once! But now we don't. Not sure why. I think that was meant to be a suggestion, rather than a question.
|
# ? Feb 5, 2014 05:35 |
|
2banks1swap.avi posted:OK, asked, and phew, big answer. Most IOC containers allow configuration delegates, you really should be using IOC for this. Really!
|
# ? Feb 5, 2014 08:20 |
|
I have an assembly that contains business logic code that I would like to make available to another application through COM. I know how to deal with all the COM visible stuff as I've done that before albeit with a much simpler case. What I'm not sure about is configuration details that the assembly relies on. It gets access to a database through a repository layer that then hits an ORM. We have a simple console test app that has connection strings and such in app.config. We also have some WebAPI services with a similar setup in web.config. I just have no clue what needs to happen to get it working for a situation like this where I want a standalone assembly that will be used by a non-.NET application. Has anyone dealt with something like this before or have some ideas on where I might start?
|
# ? Feb 5, 2014 12:28 |
|
I think if you make a MyAssembly.dll.config file in the same folder it will find it. Or at least that stunt worked for the one office plugin I wrote eons ago and seems to work for stuff like unit tests. If you've got WCF in play I would just expose HTTP and let the com app speak to that.
|
# ? Feb 5, 2014 14:28 |
|
|
# ? Jun 5, 2024 03:13 |
|
Thanks, I'll give that a shot. Now I'm running into problems getting the client to recognize the COM object, so I need to figure that out first. Using web services is another possibility. I had done a quick proof of concept for that awhile back which seems to have somehow stopped working. My biggest issue is that as much as PowerBuilder sucks, trying to get PowerBuilder to interface with anything else is even worse.
|
# ? Feb 5, 2014 16:02 |